标签: netflix

Netflix/Hulu系统架构

有谁知道Hulu或Netflix的系统架构?他们如何保护自己的内容?他们如何在保持内容安全的同时处理数百万并发用户的可扩展性?将理解框图.

netflix

7
推荐指数
1
解决办法
4635
查看次数

从chromecast发送者应用程序启动netflix电影

我正在开发一个chromecast发送器应用程序,我想让netflix启动并播放所请求的电影.但是,我只能设法启动Netflix应用程序,但它不加载视频,因为我不确定我需要使用请求发送哪些参数.

我一直无法找到Netflix讨论此内容的任何资源.这可能吗?或者netflix是否只会根据自己的应用程序中的请求启动和播放视频?

netflix chromecast

7
推荐指数
1
解决办法
997
查看次数

具有RxJava支持的Chaining Retrofit服务

我在使用改造的RxJava支持来链接observable时遇到了麻烦.我可能误解了如何使用它,否则它可能是改造中的一个错误.希望有人在这里可以帮助我了解正在发生的事情.编辑:我正在使用MockRestAdapter进行这些响应 - 这可能是相关的,因为我看到RxSupport实现略有不同.

这是一个虚假的银行应用程序.它正在尝试进行转移,并且在转移完成后,它应该执行帐户请求以更新帐户值.这基本上只是我试用flatMap的借口.遗憾的是,以下代码无效,订阅者无法收到通知:

案例1:链接两个改造生产的可观测量

转移服务(注意:返回改造生产的可观察物):

@FormUrlEncoded @POST("/user/transactions/")
public Observable<TransferResponse> transfer(@Field("session_id") String sessionId,
                                             @Field("from_account_number") String fromAccountNumber,
                                             @Field("to_account_number") String toAccountNumber,
                                             @Field("amount") String amount);
Run Code Online (Sandbox Code Playgroud)

帐户服务(注意:返回改进生成的observable):

@FormUrlEncoded @POST("/user/accounts")
public Observable<List<Account>> getAccounts(@Field("session_id") String sessionId);
Run Code Online (Sandbox Code Playgroud)

将两个改造后的观测链连在一起:

transfersService.transfer(session.getSessionId(), fromAccountNumber, toAccountNumber, amount)
            .flatMap(new Func1<TransferResponse, Observable<? extends List<Account>>>() {
                @Override public Observable<? extends List<Account>> call(TransferResponse transferResponse) {
                    return accountsService.getAccounts(session.getSessionId());
                }
            })
            .subscribeOn(Schedulers.io())
            .observeOn(AndroidSchedulers.mainThread());
Run Code Online (Sandbox Code Playgroud)

案例2:创建我自己的可观察和链接与改造生产的

如果我忽略了"平面映射"调用中Retrofit内置的Rx支持,它可以完美运行!所有订户都会收到通知 见下文:

新帐户服务(注意:不会产生可观察的):

@FormUrlEncoded @POST("/user/accounts")
public List<Account> getAccountsBlocking(@Field("session_id") String sessionId);
Run Code Online (Sandbox Code Playgroud)

创建我自己的observable并自己发出项目:

transfersService.transfer(session.getSessionId(), fromAccountNumber, toAccountNumber, amount)
            .flatMap(new Func1<TransferResponse, Observable<? extends List<Account>>>() {
                @Override …
Run Code Online (Sandbox Code Playgroud)

android netflix square rx-java retrofit

7
推荐指数
1
解决办法
3366
查看次数

为什么像Ribbon这样的客户端负载均衡器?

Netflix使用Ribbon,在他们的术语中称为"客户端负载均衡器".与传统的负载均衡器相比,客户端负载均衡器的用例和优势是什么?Ribbon和其他Netflix OSS服务是AWS特定的还是可以在其他环境中使用?

load-balancing netflix amazon-web-services

7
推荐指数
1
解决办法
8289
查看次数

将请求标头传递给Ribbon IRule密钥参数

我有一个Spring Cloud应用程序,我正在自定义功能区客户端,如" 自定义功能区客户端"一节中所述,我的IRule如下所示:

public class HeadersRule extends AbstractLoadBalancerRule {

public HeadersRule () {
}

public HeadersRule(ILoadBalancer lb) {
    this();
    this.setLoadBalancer(lb);
}

public Server choose(ILoadBalancer lb, Object key) {

     //I want the key to contain the headers from the request so I can decide choose the server by one of the headers

    }
Run Code Online (Sandbox Code Playgroud)

我有一个休息控制器:

@RequestMapping("/")
public String hello(HttpServletRequest request, HttpServletResponse response) {

   //here I want to pass  the key parameter to ribbon

    return result;
}
Run Code Online (Sandbox Code Playgroud)

我想在我的IRule中按其中一个标题的值选择下一个服务器.如何将标题传递给我的自定义IRule关键参数?(通过RestTemplate或Feign,或者如果您有另一个使用Ribbon的选项...)

编辑可能的方向

在AbstractLoadBalancerAwareClient类中

public T …
Run Code Online (Sandbox Code Playgroud)

spring-mvc netflix spring-cloud

7
推荐指数
1
解决办法
1326
查看次数

刮痧Netflix

试图以编程方式从Netflix中获取我最后查看的数据,但仅在登录阶段遇到一些问题.我当前的代码只会导致Netflix吐出一个We were unable to process your request.页面:

var request = require('request').defaults({jar: true});
var cheerio = require('cheerio');

var url = "https://www.netflix.com/Login?locale=en-GB&nextpage=https%3A%2F%2Fwww.netflix.com%2FWiViewingActivity";

request(url, function (error, response, body) {
    if (!error && response.statusCode == 200) {
        var $ = cheerio.load(body);
        var authCode = $("#login-form > input").attr("value");
        request.post(url+"?email=myemail%40gmail.com&password=mypassword&RememberMe=on&authURL="+authCode, {
        }, function(err, response, body){
            console.log(body);
        });
    }
})
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

令人惊讶的是,Google上几乎没有任何内容Scraping Netflix.

netflix node.js web-scraping

7
推荐指数
1
解决办法
2685
查看次数

Eureka netflix - 集群服务器列表为空

我想在没有 Spring Boot 的情况下进行服务发现。所以我下载了 netflix 项目示例,因为它的 gradle 项目我想使它成为 maven。

所以我创建了 maven 项目,导入了类和配置,并添加了依赖项。

我将它eureka.war放在 Tomcat webapps 文件夹中,然后启动了 eureka 服务器。

但是当我在 eclipse 中运行应用程序时,我收到了一个错误。

错误 c.netflix.discovery.DiscoveryClient - DiscoveryClient_UNKNOWN/DESKTOP-B997GFD - 无法刷新其缓存!status = 没有已知的尤里卡服务器;集群服务器列表为空 com.netflix.discovery.shared.transport.TransportException: 没有已知的尤里卡服务器;集群服务器列表为空

并且无法从尤里卡获取示例服务的实例以与之交谈

netflix netflix-eureka

7
推荐指数
1
解决办法
6379
查看次数

实现类似 Netflix 的媒体播放器,防止屏幕截图和视频捕获

有没有办法阻止用户截取屏幕截图或捕获视频文件的屏幕?与 Netflix 的实现方式类似。每当我们尝试单击屏幕时,它都会返回黑屏。我只需要一些正确方向的起点。谢谢!编辑:它与 DRM 更相关。Netflix 已经在实施它,所以肯定有一些解决办法。

html drm netflix video-player

6
推荐指数
1
解决办法
4905
查看次数

如何启用Hystrix DEBUG级别日志记录

我在我的一个Spring启动应用程序中实现了Netflix OSS Hystrix.并为HystrixCommand配置了一些属性.但是,如何验证HystrixCommand是否真正使用了这些属性.例如,

hystrix.threadpool.default.maxQueueSize=12
hystrix.threadpool.default.keepAliveTimeMinute=2
hystrix.command.default.execution.isolation.strategy=SEMAPHORE
Run Code Online (Sandbox Code Playgroud)

如何才能看到这些属性应用于HystrixCommand?有什么办法可以为Hystrix启用调试级别日志记录吗?

TIA

java netflix spring-boot hystrix spring-cloud-netflix

6
推荐指数
1
解决办法
2483
查看次数

在 docker 容器中运行 eureka 服务

我想eureka-server作为容器运行,并希望稍后让其他微服务注册到此容器。但是我遇到了一些问题,让它作为容器运行并访问它。该应用程序在 STS 中运行没有问题。当我在 STS 中执行它时,我可以访问eureka-serverusing localhost:8761.

application.java:

package hello;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@EnableEurekaServer
@SpringBootApplication
public class EurekaServiceApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaServiceApplication.class, args);
    }
}
Run Code Online (Sandbox Code Playgroud)

application.yml:

server:
  port: 8761

eureka:
  client:
    registerWithEureka: false
    fetchRegistry: false
Run Code Online (Sandbox Code Playgroud)

bootstrap.yml:

spring:
  application:
    name: eureka-service
Run Code Online (Sandbox Code Playgroud)

Dockerfile:

FROM java:8 
VOLUME /tmp
ARG JAR_FILE
ADD ${JAR_FILE} app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","- 
jar","/app.jar"]
Run Code Online (Sandbox Code Playgroud)

pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <properties>
        <docker.image.prefix>microservice</docker.image.prefix>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
    </properties>

    <groupId>com.example</groupId> …
Run Code Online (Sandbox Code Playgroud)

java spring netflix docker netflix-eureka

6
推荐指数
1
解决办法
1万
查看次数