Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Масштабируемый сервис в облаке с нуля

Масштабируемый сервис в облаке с нуля

Нельзя просто так взять, и начать раздавать бинарники! На этом обожглись, например, GitHub и Google, а они умеют писать код. В чем же дело? А в том, что бинарники — большие, и инструменты сборки качают их как не в себя. Это как DDoS атака, только все время, причем так и задумано. А теперь прикрутите сверху метадату, дорогие вызовы REST API, управление квотами, сбор статистики, генерацию индексов и раздачу всего этого по всей планете… и получается как-то непросто.

Знакомьтесь, это Bintray, через который разработчики по всему миру раздают свои опенсорсные бинарники, и похоже, с ним у нас всё получилось. А всё потому, что Java не тормозит. Мы вам расскажем как мы смогли создать распределенную по дата-центрам дублированную, масштабируемую систему на Java, которая в состоянии справиться с массивной параллельной нагрузкой (aka «да вы что все, охренели, одновременно всё скачивать?!»).

Ещё мы объясним, зачем нам 5 разных нереляционных баз данных и как чудесные Java решения типа Grizzly и Jersey могут служить прекрасной альтернативой традиционным веб-серверам.

Baruch Sadogursky

August 31, 2013
Tweet

More Decks by Baruch Sadogursky

Other Decks in Technology

Transcript

  1. Non-Func. Requirements Requirement RPS Availability Download 10K Always Interaction 100

    Almost always Services 1 Most of the time _________________
  2. Why don’t you just use...? Framework Why not? Angular.js Ember.js,

    ж.js Maturity Wicket State ________________ -
  3. Why don’t you just use...? Framework Why not? Angular.js Ember.js,

    ж.js Maturity Wicket State JSF No comment ________________ -
  4. Why don’t you just use...? Framework Why not? Angular.js Ember.js,

    ж.js Maturity Wicket State JSF No comment Non-java Not java bg ________________ -
  5. Executive summary Framework Why not? Lucene/compass Only embedded, resource guzzler

    solr Bad grail s integration sphynx No incremental index ________________
  6. SaaS for Web and services Component SaaS Model Mongohq Grail

    s N/A ElasticSearch N/A _________________
  7. SaaS for Web and services Component SaaS Model Mongohq Grail

    s N/A ElasticSearch N/A Redis N/A _________________
  8. 1. Vagrant boots centos on virtualbox 2. Chef install s

    all db and service rpms from private YUM repo
  9. 1. Vagrant boots centos on virtualbox 2. Chef install s

    all db and service rpms from private YUM repo 3. Profit!