
Nous continuons à publier des conférences sur le cours «Designing Highly Loaded Systems», qui est enseigné aux étudiants de l'Université polytechnique de Saint-Pétersbourg par une équipe d'ingénieurs Odnoklassniki dans le cadre du programme de deux ans «Java Developer of Highly Loaded Applications» du projet
Technopolis (un projet conjoint de Mail.Ru Group et SPbPU). En 2017,
10 conférences (30 heures de vidéo) ont été lues et téléchargées, mais le sujet Highload est si vaste qu'il est impossible de tout couvrir en un semestre. Nous n'avons plongé que brièvement dans les principaux aspects du développement Highload, qui méritent chacun un cours distinct. Cette année, nous continuons à fermer les points blancs et présentons à votre attention un ensemble de six conférences sur de nouveaux sujets: nous commençons par le calcul parallèle et le codage en direct de la première étape d'un projet de cours pour étudiants, après quoi nous nous plongons dans les outils de surveillance et de diagnostic de la JVM, puis passons aux problèmes de tolérance aux pannes. Et après une conférence sur les algorithmes avancés pertinents dans les projets très chargés, nous terminons le cycle avec une conférence sur les approches existantes de la réplication et leur applicabilité à diverses tâches.
Les dix premières conférences .
Liste des nouvelles conférences:
- Modèle d'acteur. L'avenir Ruisseaux réactifs (Vadim Tsesko incubos )
- Codage en direct de la deuxième étape du projet (incubateurs Vadim Tsesko )
- Surveillance et diagnostic de la JVM (Andrey Pangin apangin )
- Ingénierie de la fiabilité du site (Anton Ivanov keyplayer )
- Structures de données «modernes» (Dmitry Shchitinin dormidoncheg )
- Réplication (Dmitry Shchitinin dormidoncheg )
Conférence 11. Modèle d'acteur. L'avenir Ruisseaux réactifs (Vadim Tsesko incubos )
PrésentationVidéo sur la chaîne TechnostreamLa conférence aborde les approches modernes de l'organisation du calcul parallèle, qui gagnent en popularité récemment: modèle d'acteur basé sur le passage de messages dans la mise en œuvre d'Akka; Résumé Future / Promise, combinateurs et rappels pour organiser le traitement asynchrone des données pendant les E / S; et révèle également l'essence des flux réactifs pour le streaming de traitement de données avec contre-pression. De nombreux exemples d'utilisation d'approches dans les systèmes existants sont fournis, ainsi que des liens pour une étude indépendante.
Conférence 12. Livecoding de la deuxième étape du projet (incubateurs Vadim Tsesko )
Projet de coursVidéo sur la chaîne TechnostreamLe livecoding est la solution de base du projet que les étudiants de Technopolis devraient achever cette année. Semblable à la première leçon, avec la seule différence fondamentale: cette fois, nous sommes passés à un serveur Web haute performance de one-nio. Cette fois également, nous avons enregistré une vidéo avec une démonstration plus détaillée de la mise en œuvre des composants.
Conférence 13. Surveillance et diagnostic de la JVM (Andrey Pangin apangin )
PrésentationVidéo sur la chaîne TechnostreamLa conférence présente des outils pour surveiller une application Java et analyser les problèmes courants: blocages, fuites de mémoire, goulots d'étranglement des performances. Nous considérons à la fois les utilitaires standard du JDK et les logiciels tiers populaires, et analysons les capacités des profileurs Java. Il montre comment JMX, JVM TI et d'autres interfaces aident au développement de leurs propres outils de surveillance et de diagnostic.
Conférence 14. Site Reliability Engineering (Anton Ivanov keyplayer )
PrésentationVidéo sur la chaîne TechnostreamLa conférence couvre les bases de l'écriture de code tolérant aux pannes. Les erreurs typiques sont analysées, ce qui conduit en pratique à la chute de systèmes fortement chargés. La première partie traite des problèmes qui se posent au niveau du service: pools de ressources, leur surcharge, démarrage lent et arrêt progressif. Dans la deuxième partie, nous passons au niveau de l'interaction interservices, en discutant en détail les types de timeouts, les techniques d'équilibrage et les problèmes des retrays. La dernière partie traite de la surveillance et de la réponse aux incidents.
Conférence 15. Structures de données «modernes» (Dmitry Shchitinin dormidoncheg )
PrésentationVidéo sur la chaîne TechnostreamLa conférence est consacrée aux structures de données, qui, en règle générale, ne sont pas considérées dans les cours classiques, mais sont effectivement appliquées dans la pratique dans les systèmes distribués fortement chargés. Il s'agit souvent de structures de données probabilistes, compactes et rapides, mais donnant un résultat approximatif. Ainsi, par exemple, en utilisant HyperLogLog, vous pouvez estimer le nombre d'éléments différents dans un ensemble de données à partir de milliards d'éléments, sans y dépenser plus d'un kilo-octet, et le résultat ne différera de l'exact que de quelques pour cent. Une section distincte est consacrée aux approches de calcul des quantiles; leurs forces et leurs faiblesses sont examinées.
Conférence 16. Réplication (Dmitry Shchitinin dormidoncheg )
PrésentationVidéo sur la chaîne TechnostreamLa réplication et le sharding sont au cœur des systèmes distribués à haute tolérance aux pannes. La réplication avec un seul leader dédié est largement utilisée dans les SGBDR classiques. Une configuration avec plusieurs leaders distingués peut se produire avec des systèmes fonctionnant dans plusieurs contrôleurs de domaine et se produit également dans des tâches d'édition collaborative. La réplication sans leader dédié est au cœur des bases de données NoSQL telles que Cassandra, Voldemort, Riak, etc. La conférence traite de chaque approche, portée, forces et faiblesses, ainsi que des détails clés de l'implémentation.
La playlist de toutes les conférences est sur le
lien , ainsi que sur
Youtube .
Le projet de cours se trouve
ici .
Diverses solutions peuvent être trouvées parmi
les demandes d'extraction fermées .
Les retransmissions et enregistrements vidéo des autres cours du projet
Technopolis peuvent être trouvés dans le
groupe officiel du projet dans OK .
Nous vous rappelons également que la chaîne
Technostream propose des conférences et des master classes à jour sur la programmation et l'analyse des données de spécialistes informatiques de tous les projets éducatifs de Mail.Ru Group - Technoatom, Technopark, Technopolis, Technosphere et Technotrek.