leslbrok verlan overtin

0 views
Skip to first unread message

Osias Baptist

unread,
Aug 2, 2024, 2:39:46 AM8/2/24
to riobrunsoftdrop

For development / debugging, it can be helpful to send a slice of production traffic to your laptop to dig into end-to-end behaviors. Our product, Spinnaker, consists of many services and a huge variety of usages by users. Running everything locally to exercise an end-to-end use cases is not often possible without melting a laptop. Instead, being able to run a single service and route production traffic can make things pretty easy.

Thankfully, task queues in Temporal are cheap to make. If this were not the case, a feature like traffic routing would be harder or impossible to implement at scale. In our particular use cases, these route task queues are typically somewhat short-lived.

The Netflix Temporal SDK has an activity interface called TaskQueueNamer which forms the basis of this feature. Different implementations are wired up into Spring Boot based on context. We use this TaskQueueNamer everywhere that task queue names are specified. In most cases and by default behavior, a provided name input will result in an equal output.

A non-traffic routing use case for this is our LaptopTaskQueueNamer, which renames all task queues when running an application locally so that operations running on your laptop do not interfere with applications running in the test environment (all laptops connect by default to our test Temporal clusters, rather than running it locally).

Adding this Fast Property will then rename all invocations of clouddriver-cloud-operations to h...@example.com/clouddriver-cloud-operations, which is our naming convention for laptop task queues, but only when the X-SPINNAKER-USER MDC value matches someon...@example.com. We use a ContextPropagator in the Temporal SDK to pass this information into Workflow & Activity executions.

There are two TaskQueueNamer implementations for traffic routing: RoutingLaptopTaskQueueNamer and RoutingTaskQueueNamer. The first is only wired up when spring.profiles.active includes laptop, which is automatically set when running an application on your laptop. The other is the default TaskQueueNamer that is wired up in a deployed application. Both implementations pull configuration from a TrafficRouteRepository, which stores a bunch of TrafficRouteProperty objects.

This should look similar to the shape of the YAML from above: We deserialize the YAML onto this. Each property must have a strategy defined, which informs the TaskQueueNamers on how to rename the task queue. We ship with two built-in strategies: value and laptop, but an application owner could provide their own strategy if they were motivated. The config field is open-ended and used to configure the strategy. For laptop, we just need user so we know how to rename the queue following the laptop task queue naming convention:

The RoutingTaskQueueNamer (which is used in deployed applications) then uses the repository of TrafficRouteProperty objects, finding the configured strategy and attempts to find a property that matches:

@RobZienert great write-up. Longer-term I see us implementing a similar routing system natively by the service. This post could be used as an inspiration. I filed a feature request to get this tracked.

One curiosity I have with interceptors - since the logic is performed within the Workflow thread context, would resolving the task queue name still be done through an activity? I would presume so, but just verifying.

Changing a task queue name (as well as any of the ActivityOptions) is a backward-compatible change. So there is no need to use activity to look those up in an interceptor. The only caveat is that the resolver should be relatively fast to not block the workflow thread for long which is going to trip the deadlock detector.

This morning I received an email from the CEO of Netflix, Mr. Reed Hastings. In it, he was trying to apologize for skyrocketing the cost of Netflix service by over 60%. Netflix did really mess up and they lost about 1 million customers with their stupid move. And they were forced to publicly release the data of the loss of customers. That caused them to plunge in the stock market late last week.

It is clear from the feedback over the past two months that many members felt we lacked respect and humility in the way we announced the separation of DVD and streaming and the price changes. That was certainly not our intent, and I offer my sincere apology. Let me explain what we are doing.

I also love our streaming service because it is integrated into my TV, and I can watch anytime I want. The benefits of our streaming service are really quite different from the benefits of DVD by mail. We need to focus on rapid improvement as streaming technology and the market evolves, without maintaining compatibility with our DVD by mail service.

So we realized that streaming and DVD by mail are really becoming two different businesses, with very different cost structures, that need to be marketed differently, and we need to let each grow and operate independently.

Qwikster will be the same website and DVD service that everyone is used to. It is just a new name, and DVD members will go to qwikster.com to access their DVD queues and choose movies. One improvement we will make at launch is to add a video games upgrade option, similar to our upgrade option for Blu-ray, for those who want to rent Wii, PS3 and Xbox 360 games. Members have been asking for video games for many years, but now that DVD by mail has its own team, we are finally getting it done. Other improvements will follow. A negative of the renaming and separation is that the Qwikster.com and Netflix.com websites will not be integrated.

For me the Netflix red envelope has always been a source of joy. The new envelope is still that lovely red, but now it will have a Qwikster logo. I know that logo will grow on me over time, but still, it is hard. I imagine it will be similar for many of you.

I will not be the one judging the new pricing because I still think it is a good deal. However, what I think I am allowed to judge is the spike in the price. You cannot increase the price of anything 60% and then just smile. Mr. Netflix, what if you got an email tomorrow from your landlord telling you that your rent will increase 60% starting on September 1st? Not cool, right? Try to think of a viable solution, a pricing plan or something that perhaps increases what you charge 60% but throughout 5 years or so. I understand your costs have increased, but you cannot just spike the prices 60%.

The first thing I did upon my return was open all the windows in my apartment; it is so hot in NYC! The second thing I did was to shower, go grocery shopping and stop by my neighborhood favorite Chinese restaurant to pick up some General Tso Chicken with pork fried rice. Noting better than Chinese greasy food for the post-flying headache and jet lag. And then, I sat on my couch to watch a movie before going to sleep. I streamed a Netflix movie.

When streaming video was new, Netflix was able to secure contracts with the likes of Warner Bros. Studios and MTV to license big TV and film catalogues for about $5 million to $10 million per year. This time around, Pachter says, those costs could increase more than tenfold.

A study published Tuesday by Sandvine Inc. shows that Netflix movies and TV shows account for nearly 30 percent of traffic into homes during peak evening hours, compared with less than 17 percent for Web browsing.

Only about a quarter of homes with broadband subscribe to Netflix, but watching movies and TV shows online takes up a lot of bandwidth compared with Web surfing, email and practically every other Internet activity except file sharing and videoconferencing.

Born in Barcelona, moved to Los Angeles, and ended in NYC, where I enjoy life, tweet about music and work as a geek in security for wireless networks.
All the opinions expressed in this blog are my own and are not related to my employer.
About me:

I agree totally... 1st apple tv loving it for me and the wife. But parental support for restrictions for my 3 children not very well thought out. Family movie night browsing movies selections don't want see MILF or the blood covered movie title and the other inappropriate titles while looking at new arrivals looking for Disney movies or other G,PG, PG-13. Something should be done ASAP.? I love what apple has been offering for the devices but more control over them in the user hands would be more appreciated then these devices could be in every childs room... IJMS

4. Configure your new profile with whatever name you like, and a different "sign-in" name than your normal account. This is where you can set the profile to only allow certain content ratings. Set them up as you see fit. Click "Save."

5. Go back to your AppleTV. Logout of the current Netflix account, and log back in using the Account Profile sign-in ID you created on the Netflix web site. Yes, I know AppleTV says to put in your email address, but just put in the Account Profile sign-in instead.

It's working for me. I have my AppleTV set to login under a profile with parental controls, not the main account login. I just checked it again just now, and it's working fine. Maybe it's something with your account?

Ok, I should clarify... streaming to a computer or streaming to a Wii will not work unless you are logged into your main profile (Owner Profile). I am not completely sure about AppleTV, however, based on my conversations with Netflix support, they said that any kind of online streaming from Netflix must be done through the main (owner) account due to agreements between Netflix and the media companies providing the content.

apple please create a way to remove everything like search/genre/suggestion/tv shows and leave only instant queue and just for kids. There are so many familes with kids dont want there kids to access anything above pg

90f70e40cf
Reply all
Reply to author
Forward
0 new messages