DiaryException このページをアンテナに追加 RSSフィード Twitter

2015-07-19(日)

[]NetflixgithubリポジトリはWeb技術百貨店だった

検索しているとなにかとNetflixgithubリポジトリがヒットするので、全部(2015/07/18現在分)調査してみた。

github APIで https://github.com/Netflixリストを全部取得して、名前・概要・URL・最終更新日時 (なんの更新だ?) を抽出

AWS用のプロダクトが多かったのでまずそれらと、その他という分類にした。その他はほとんどがJavaライブラリシステムだが、一部WebアプリケーションPythonライブラリがある。

日本語での説明はReadmeやWikiを見て書いているが、理解が正しくないかもしれない。

AWS用

aws-autoscaling

Tools and Documentation about using Auto Scaling

AWSでオートスケーリングを使うときのためのup/downスクリプトとドキュメント

asgard

Web interface for application deployments and cloud management in Amazon Web Services (AWS). Binary download: http://github.com/Netflix/asgard/releases Snapshot builds: https://netflixoss.ci.cloudbees.com/job/asgard-master/ Twitter: http://twitter.com/AsgardOSS

AWSのアプリケーションデプロイ管理のためのWebアプリケーション

SimianArmy

Tools for keeping your cloud operating in top form. Chaos Monkey is a resiliency tool that helps applications tolerate random instance failures.

AWSオートスケーリング環境をより安全に、効率的にするための補助ツール

eureka

AWS Service registry for resilient mid-tier load balancing and failover.

AWS環境内でロードバランシング、フェールオーバを実現するためのシステム。AWS Elastic Load Balancerとは違うらしい。

NetflixではAsgardCassandraMemcachedデプロイなどと連携して使われている。

edda

Service to track changes in your cloud

AWSリソース、履歴管理のためのツール

frigga

Utilities for working with Asgard named objects

AWS object nameの生成、パースのためのライブラリAsgardで使われる。

aminator

A tool for creating EBS AMIs. This tool currently works for CentOS/RedHat Linux images and is intended to run on an EC2 instance.

AWSでマシンイメージを作るためのツール

ice

AWS Usage Tool

AWS利用のための補助ツールとWebアプリケーション

アカウントリージョンサービスリソース利用状況の管理など。

glisten

Ease of use Groovy library for building JVM applications with Amazon Simple Workflow (SWF)

Amazon Simple Workflow Service (SWF) アプリケーションGroovyで実装するためのライブラリ

s3mper

s3mper - Consistent Listing for S3

Amazon S3インデックス一貫性をチェックするためのツール

security_monkey

Security Monkey

AWSアカウント情報のセキュアでない部分の発見・警告をするツール

その他

astyanax

Cassandra Java Client

CassandraクライアントライブラリHectorより良いらしい。

通常のCassandra利用の他、recipesで行ロックオブジェクトストア、Reverse Index検索メッセージキューを実現するAPIを提供している。

curator

ZooKeeper client wrapper and rich ZooKeeper framework

Zookeeperクライアントライブラリ

全体はApache Curatorになったので、Netflix拡張のみがある。今はzkclientとのブリッジAPIだけ。

Priam

Co-Process for backup/recovery, Token Management, and Centralized Configuration management for Cassandra.

Cassandra補助ツール

バックアップリカバリトークン管理、シードディスカバリ、設定管理、AWSサポート、など。REST API提供している。

CassJMeter

JMeter plugin to run cassandra tests.

Cassandra性能計測用Apache JMeterプラグイン

servo

Netflix Application Monitoring Library

簡単にJMX MBeanを実装するためのライブラリ

MetricsよりもJMX特化でシンプル

exhibitor

ZooKeeper co-process for instance monitoring, backup/recovery, cleanup and visualization.

Zookeeper補助ツール

データバックアップリストアログ整理、ZKノード可視化など。REST API提供している。

netflix.github.com

Netflix OSSに関する情報を発信するWebページ。

かつては映画ストアのような見た目をしていたらしい

gradle-template

Netflixプロダクトで用いられるビルドツールGradleテンプレート集。

archaius

Library for configuration management API

Javaプロダクト設定管理のためのAPIを提供するライブラリApache commons configuration拡張として実装されている。

ZookeeperやDBから設定情報を取得し動的な設定反映を実現できる。

governator

Governator is a library of extensions and utilities that enhance Google Guice to provide: classpath scanning and automatic binding, lifecycle management, configuration to field mapping, field validation and parallelized object warmup.

Google Guice拡張ライブラリ

クラスパス制御、設定情報、バリデーションなどのためのアノテーション提供する。

netflix-commons

Common utilities for Netflix OSS projects

Netflixプロダクトで使われる共通ライブラリ

blitz4j

Logging framework for fast asynchronous logging

ロギングライブラリ

非同期でスケーラブルなモデルによりlog4jボトルネックを解消しており、パフォーマンスに優れる。

Hystrix

Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable.

分散システム依存関係を整理し、部分ダウンなどによる失敗に対し速やかなリカバリを実現するためのシステム

レイテンシなどを可視化するダッシュボード提供する。

Turbine

SSE Stream Aggregator

Server-Sent Event JSONデータストリームを1つにまとめるツール。Hystrixのダッシュボードで使われている。

ribbon

Ribbon is a Inter Process Communication (remote procedure calls) library with built in software load balancers. The primary usage model involves REST calls with various serialization scheme support.

ロードバランシング、フォールトトレラント、非同期モデルによるHTTP/TCP/UDP通信、キャッシングバランシングを実現するためのクライアントライブラリ

denominator

Portably control DNS clouds using java or bash

DNS制御ツールライブラリ

karyon

The nucleus or the base container for Applications and Services built using the NetflixOSS ecosystem

Netflixプロダクトなどを活用した、Webサービス実装のためのフレームワーク

Governator、Archaius、Eureka等に対応

EVCache

A distributed in-memory data store for the cloud

Memcachedとspymemcachedをベースにした、オンメモリデータストア。

recipes-rss

RSS Reader Recipes that uses several of the Netflix OSS components

Netflixプロダクトを用いたRSSリーダ

archaius、astyanax、blitz4j、eureka、governator、hystrix、karyon、ribbonservoの利用の参考にするためのコード

Cloud-Prize

Description and terms for the Netflix Cloud Prize, which runs from March-September 2013. Read the rules, fork to your GitHub account to create a Submission, then send us your email address.

Netflix Cloud Prizeのためのリポジトリ

netflix-graph

Compact in-memory representation of directed graph data

有向グラフデータを扱うためのライブラリ

アプリケーション上ではグラフデータはオンメモリで、ファイルなどにシリアライズ・デシリアライズが可能。

zuul

Zuul is an edge service that provides dynamic routing, monitoring, resiliency, security, and more.

認証モニタリングリクエストの動的ルーティングストレステストリクエスト・レスポンスの制御などを扱うためのライブラリ

Webアプリケーションの前面に設置する。

suro

Netflix's distributed Data Pipeline

分散データストリームシステム。受け取ったデータファイルに書き出したり、分散ファイルシステムに書き出したりする。

Apache Kafkaとも連携する。

brutal

A multi-network asynchronous chat bot framework using twisted

botを作るための非同期ライブラリ。IRC、XMPPをサポート。

pytheas

Web Resources and UI Framework

データ可視化のためのWebアプリケーションを構築するためのライブラリJerseyベース

gcviz

Garbage Collector Visualization Tool/Framework

JVMのガベージコレクションログ可視化するWebアプリケーション

Lipstick

Pig Visualization framework

Apache Pigワークフロー可視化するWebアプリケーション

NfWebCrypto

Web Cryptography API Polyfill

W3C Web Cryptography API実装の1つ。Google Chrome (amd64 Linux) 用プラグインで、実用的ではなさそう。

genie

Federated Job Execution Engine

Hadoopシステムの他、Sparkなどのジョブ実行、クラスタ管理するためのシステム

feign

Feign makes writing java http clients easier

JavaHTTPクライアントを実装するためのライブラリ

Nicobar

動的モジュール読み込みアプリケーションを実装するためのライブラリ

blesk

Netflix blesk is a lightweight client for pushing notifications to web based applications/sites.

Bleskサーバを持つWebアプリケーションに通知を送信するためのクライアントライブラリ

Bleskサーバの実装が無いため詳細不明。

dynomite

A generic dynamo implementation for different k-v storage engines

Dynamoインスパイアされた分散KVS。

RedisMemcached依存している。

aegisthus

A Bulk Data Pipeline out of Cassandra

Cassandraに保存されたデータ (SSTable) をMapReduce/Pigで処理するためのライブラリ

zeno

Netflix's In-Memory Data Propagation Framework

データ管理・分配のためのオンメモリシステム

Javaオブジェクトのコンパクトなシリアライズデータセットの重複発見・除去、差分更新、など。

staash

A language-agnostic as well as storage-agnostic web interface for storing data into persistent storage systems, the metadata layer abstracts a lot of storage details and the pattern automation APIs take care of automating common data access patterns.

CassandraMySQLモニタリング操作のためのREST APIなどを提供するWebアプリケーション

PigPen

Map-Reduce for Clojure

ClojureMapReduceアプリケーションを実装するためのライブラリClojureで書くとPigかCascadingのコードに変換される。

fabricator

DI (Dependency Injection) ライブラリ

Fido

マルウェア検出などに前後する人手のセキュリティタスクを効率化するためのツール

dyno

Java client for Dynomite

Dynomite用Javaクライアントライブラリ

ReactiveLab

Experiments and prototypes with reactive application design.

サービス指向アーキテクチャ + Reactive application designのための実験的なコード集、とあるが要するにReactiveX (RxJava)を使ったコード集。

msl

Message Security Layer

セキュアなメッセージング層の実装。認証キー交換などをサポート。

spectator

次元時系列データを記録するためのライブラリ。主にServo連携し、Javaアプリケーション内の指標の記録を目的としているよう。

inviso

Hadoopジョブ検索クラスタ状態の可視化のためのWebアプリケーション

sketchy

Webページのスクリーンショット取得、スクレイプのためのアプリケーション

PhantomJSを使用しJSレンダリングにも対応

atlas

次元時系列データ管理システムライブラリ。欠損値の扱いに対応したインタラクティブな集計、チャートによる可視化ができる。

Atlas Stack Languageという独自クエリを用いる。

Scumblr

Googleなど検索エンジンやAppStore、SNSなどを定期的に検索し、結果を保存、条件に応じて処理を実行するWebアプリケーション

Workflowable

ワークフロー (処理の流れ) を定義するためのライブラリ

Raigad

Co-Process for backup/recovery, Auto Deployments and Centralized Configuration management for ElasticSearch

Elasticsearchデータバックアップリストア、設定情報デプロイノードデプロイモニタリングをサポートするためのツール

Prana

A sidecar for your NetflixOSS based services.

Netflixプロダクトを容易に使うためのWebアプリケーション。Karyonベース

EurekaRibbon、Archaiusなどに対応

ocelli

ロードバランシングをリアクティブに実装するためのクライアントライブラリ

Wikiを見ると前はRxLoadBalancerという名前だったよう。

iep

Insight Engineering Platform Components

Netflixプロダクト利用の際のGuiceモジュールやサンプルコードなど。

iep-shadow

Shadowed versions of rx/platform libraries for Insight Engineering Platform use

上記iepで利用するライブラリ普通はここを参照することはなさそう。

netflixoss-build-infrastructure

Project used to test our gradle publishing to bintray

NetflixプロダクトのためのGradleプラグイン

Surus

Pig・Hive用UDF。現在予測モデル評価、異常検知についてのコードがある。

vector

Vector is an on-host performance monitoring framework which exposes hand picked high resolution metrics to every engineer’s browser.

サーバモニタリング可視化WebアプリケーションPerformance Co-Pilot依存している。

security-bulletins

Security Bulletins that relate to Netflix Open Source

Netflixプロダクトに組み込むことを目的にしたセキュリティ通知? 詳細不明。

ember-nf-graph

Composable graphing component library for EmberJS.

Ember.jsチャートを描画するためのライブラリ

ember-nf-graph-examples

Hosted examples of ember nf-graph components

上記ember-nf-graphのデモサイトを構築するためのコード

peeringdb-py

PeeringDB Python library

PeeringDB 2.0用Pythonライブラリ

Redis連携キャッシュを実装することもできる。

トラックバック - http://d.hatena.ne.jp/LaclefYoshi/20150719/netflix_github
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2012 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2013 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2014 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2015 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2016 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |