19日にバルセロナで開催されます。場所も昨年と同じ会場なため4ルームくらいになりそうです。前知識をつけておくべく、概要をGoogle先生に翻訳していただきました。原文はこちらでございますのでご確認ください。4.29更新:スケジュールに変更点がありましたので修正しました。Securityのアーキテクチャの概要を提供します。Securityがどのように「カバーして」動作するかを深く理解できるようにすることです。この講演では、さまざまな認証と認可のシナリオもデモンストレーションします。Reactorで開発しています。Foundryオーケストレーション(!)まで幅広いReactiveな新機能をサポートしています。このセッションでは、Reactor3について具体的な例を紹介します。ReactiveアプリケーションやAPIを作成してテストする方法を示します。ほとんどすべての会社でこれを見つけることができます。要件の絶え間ない変更にもかかわらず、そのようなエコシステムが強力で使いやすいものである必要がある場合は、それほど明白な作業ではありません。このセッションではエコシステムの構造化、API設計のカバー、依存関係の処理、機能の決定などに取り組んでいきます。これらのすべては、AllegroのマイクロサービスインフラストラクチャのためのSpringベースのプラットフォームとライブラリを構築する経験(および間違い)から来ています。私は内部のコモンズの拡大と一般的な有用なオープンソースライブラリの作成の両方のために、成功したツールを構築するために不可欠な実践的な知識をお知らせしたいと考えています。12:00pm巨大で急速に成長するクロスボーダーb2c電子商取引ビジネスとして、AliExpressは速度と安定性を保つため、Microservicesに大きく依存しています。BootをAlibabaのインフラストラクチャサービスに統合する方法。BOMを使用して依存関係を管理する方法。ConfigをAlibabaコンフィギュレーションサービスに統合する方法。starterを書いてきた中で見つけたパターン。12:00pmSlide:https://speakerdeck.com/michaelsimons/bootiful-database-centric-applications-with-jooqDemo:https://github.com/michael-simons/bootiful-databasesjOOQは、Javaベースのアプリケーションからリレーショナルデータにアクセスするためのいくつかの全く異なるテクノロジーの1つです。Databaseなどの市販製品を使用するデータベース・スキーマとは独立して、データベース・スキーマを調べるクエリー・ビルダー・フレームワークについて説明しています。ステートメントを生成するための特定言語(DSL)。jOOQの目標は、明示的にユーザーをSQLから保護するのではなく、タイプセーフな方法で使用することです。APIとして公開するために誰が利用できるのかを学びます。途中で自動的にデータベースを移行することで、データベース中心のアプリケーションでも継続的な配信を実現する方法を学習できます。12:00pm自動テストの最も重要な利点の1つは、システムアーキテクチャを進化させるために、迅速で安全なコードリファクタリングを保証することです。主な問題は、書込みが容易で、実行が容易で、開発や実行時間に時間がかからないテストを書き込む方法です。このセッションでは、マイクロサービスエンドポイントの検証、他のマイクロサービスへのリモート呼び出し、または非同期/リアクティブコードのような主要なUnicornsアーキテクチャーの課題に焦点を当てて、優れた(単体の)テストを作成するのに役立つ強力なJavaテストライブラリを探求します。Cloudの素晴らしさについて見聞きし、自分で取り組んで試してみるときだと決めました。Cloudのホームページに到達。Cloudの傘の下にあるプロジェクトの数はここ数年で非常に増加しています。Cloudのエコシステムの初心者であれば、必要なものを見つけるためにプロジェクトを選別するのはかなり難しいかもしれません。Cloudプロジェクトをしっかりと理解し、クラウドネイティブアプリケーションの構築方法について学び、自信を持って始めることができるでしょう。2:00pmここ数年、私たちはMicroservicesを採用してきましたが、主にバックエンドサービスのために採用されました。フロントエンドを考えるとき、私たちはほとんどの場合、モジュール化されたバックエンドを利用するモノリシックなWebアプリケーションで終わってしまいます。この講演では、マイクロサービスをどのように活用し、フロントエンドを分割して、バックエンドとフロントエンドの両方でマイクロサービスのフルパワーを活用できるようにするかを検討します。プログレッシブエンハンスとウェブ標準の組み合わせによるいくつかのJavaScriptテクニックの使用が、モジュラー/コンポジットUIの作成にどのように役立つかを探求します。2:00pmSlide:https://speakerdeck.com/mraible/front-end-development-for-back-end-developers-devoxx-uk-2017フロントエンドの開発に追われているバックエンドの開発者ですか?優れたUI開発者になるために学ばなければならないすべてのJavaScriptフレームワークとビルドツールにはイライラしていませんか?もしそうなら、このセッションはあなたのためにあります!私たちは、フロントエンドからの開発(npm、yarn、Gulp、Webpack、Yeoman)のための取引のツールを探究し、HTML、CSS、JavaScriptの基礎を学びます。ブートストラップ、マテリアルデザイン、ES6、およびタイプスクリプトの複雑さに挑戦します。最後に、この新技術を使ってスピードを上げた後、どのようにして、細やかでダンディーなJHipsterプロジェクトをどのように統合できるかを示します。Bootの真のパワー(内部のオートコンフィギュレーションの仕組み)を初めて体験する機会が与えられます。我々は、多くのサービスが同じアーキテクチャーとガイドラインを使用しているクライアント環境にいましたが、これまでのサービスのspringコンフィギュレーションをちらっとも見ないでにコピーすることが多いのです!ワークショップでは、カスタムの再利用可能なオートコンフィギュレーションの作成を通して、出席者にそういった機会を提供します。次のステップは、開発したオートコンフィギュレーションを利用するための独自のスターターを書く可能性と組み合わせることです。Bootの内部機構を最大限に生かす方法の完全な概要が得られます。Boot3:00pmこの講義では、ディープラーニングの最近の進歩についてのレビューから始めます。その後、DeepLearning4J(Java用に開発された商用グレードのオープンソースの分散ディープ・ラーニング・ライブラリー)を紹介し、最初のレビューで説明されたトピックをどのようにカバーするかを調べます。Bootアプリケーションを紹介します。Actuatorを使用したモニタリングシステムを実装する可能性について検討します。これにより、Actuatorのエンドポイントと相互作用できる訓練されたモニタリングシステムが実現します。3:00pmセキュリティとアイデンティティ管理はどのアプリケーションにとっても重要な側面ですが、その実装は困難です。悪いことに、それはしばしば無視され、実装されないまま、コードに侵入します。Managementサーバーが登場しました。これらのサーバーの中で最も有望なのは、オープンソースで柔軟性があり、あらゆる技術に依存しないKeycloakですが、それ自体のインフラストラクチャに容易に展開/適応可能です。このセッションでは、KeyCloakを漸進的かつインタラクティブな方法で発見することを提案します:0スライド、100%ライブコーディング。SecurityとKeycloakをどのように組み合わせるかを見ていきます。5では、既存のアノテーション駆動型プログラミングモデルの次に、新しいファンクショナルWebフレームワークを導入しました。この講義では、この新しいフレームワークについて説明します。そのフレームワークの使い方、目標、アノテーションモデルとの比較、その他の関連トピックについて説明します。4:30pmDocker、ビッグデータ、マイクロサービスの時代には、クラスタ全体でアプリケーションを合理的に配布し、実行中のすべてのアプリケーションの概要を把握することが非常に重要です。OSなどのクラスタ管理ソフトウェアは非常に重要であり、普及しています。Bootを使用してJavaベースのサービスを実装し、ローカルで、Dockerの作成を開始します。OSに配備し、拡張、アップグレード、監視、その他の操作を簡単に行うことができます。デモのいちおし:すばらしいUI、優れたCLI。Angularプロジェクトを数分で作成するために広く使用されているオープンソースのアプリケーションジェネレータプラットフォームです。JHipsterは複雑なマイクロサービスアーキテクチャに簡単なWebアプリケーションを簡単に生成できます。JHipsterには、予想より速くアプリケーションを生成し、コード化、展開するためのツールや、ヒント、アイデアが満載されています。5:20pmマイクロサービスを構築する場合、状態の管理は分散システムの問題になります。単一のモノリシックアプリケーションの境界内でトランザクションとして状態を管理できるのではなく、マイクロサービスは、さまざまなアプリケーションやデータベースのネットワークに分散されたトランザクションを使用して一貫性を管理できる必要があります。イベントドリブンアーキテクチャは、マイクロサービスにおけるデータ一貫性の問題を解決するための重要なコンポーネントです。Sourcingを含むさまざまなイベント駆動型のプラクティスについて説明します。Streamを使用して、これらのポピュラーなプラクティスがどのように実装されるかを見ていきます。6:20pmスケーラビリティとレジリエンスは、モダンなアプリケーションの重要な目標です。少数のスレッドでスケーリングするノンブロッキング、イベントドリブンの方法を使用できます。5では、これらのニーズに対応するための新しいReactiveに関するスタックが紹介されています。2.0を使用して反応的なWebアプリケーションを作成します次のWebFlux機能について説明します。アノテーションベースおよびファンクショナルプログラミングモデル機能的で反応的なWebClientクライアントとサーバーを含む反応的なWebSocket統合テストのサポートサポートされているランタイム新しく導入された機能のスケーラビリティと利点を示すために、パフォーマンス測定も行われます。5:30pmDemo:https://github.com/mploed/ddd-strategic-design-spring-bootドメイン駆動設計の最も貴重な部分の1つは、戦略的設計の概念です。これらの概念には、境界付きコンテキスト、コンテキストマップ、およびコンテキストマップに文書化されているパターンが含まれます。この講演では、モノリシック環境をMicroservicesに移行するなどの実用的な使用シナリオと同様に、上記のトピックのすべてについて説明します。Designを取り巻くコンセプトを実演する予定です。Cloudを立ち上げて稼働させることは簡単です。初期設定が完了したら、追加の運用上の複雑さと品質の問題に対処できるエコシステムを補完する必要があります。Cloudを何年も稼動させている間に、ドキュメンテーション、操作、テストのためのいくつかの興味深いツールを統合しました。Cloudに基づく統合プラットフォームのデモをご覧いただけます。Cloudマイクロサービスアーキテクチャを視覚化するためのダッシュボードです。マイクロサービスアーキテクチャにおける高度に分散されたシステムの文書化、テスト、トラブルシューティング、および監視は困難です。オープンソースの中で、質の高い補完的なツールを見つけることはさらに困難になります。本講演では、実稼働環境でマイクロサービスを実行する上での課題を掘り下げています。5:30pmクラウドネイティブマイクロサービスアーキテクチャは、ここ数年で、少なく効率的なコードベース、きめ細かなスケーリングオプション、CIとCDを可能にするなど、多くの理由でますます人気が高まっています。すべて潜在的に非常に強力な機能です。ほとんどの場合と同様に、マイクロサービスはアプリケーションの複雑さの面でトレードオフをもたらします。個々のサービスを扱うのは簡単です。全体のアプリケーション開発はますます複雑になります。あなたの平均的なWebアプリケーションにとっては複雑すぎるでしょう。マイクロサービスの現象に関する多くのプレゼンテーションでは、モノリシックなパターンとの比較、マイクロサービスへの移行方法について話し合っていますが、実際にその環境でどのように動くのかということはめったに聞きません。率直に言って、伝統的なモノリシックな開発経験に慣れている人にとっては脅威になる可能性があります。個々のサービスを開発するのは取るに足らないことですが、今ではチェックしておくべき数え切れないほどのサービスがあります。迷子になってしまうかもしれません...。これらすべてのサービスで、全体的な開発を指揮する人がいますか?これらのサービスがいつ、どのようにコミュニケーションを取るかに没頭しないといけなくなるでしょう。アプリケーション全体を「プラットフォーム」と呼ぶ必要があります。まもなく、開発用ラップトップでプラットフォーム全体を実行することは、困難または不可能になります。デベロッパーズの作業に取りかかり、デプロイメントパイプライン、メトリクスとロギングのまったく新しい世界について学ぶ必要があります。パニックに陥らないでください。このプレゼンテーションでは、過去3年間Microserviceプラットフォームでの作業を学んだことについて説明します。Microserviceチームに参加する際に期待することと、チームサイズが拡大するにつれてどのような状況になるかについて説明します。我々は、どのように重要なサービス間テスト戦略がチームの成功につながっているかを見ていきます。新しいサービスを追加したり、新しい機能を開発したり、バグを修正したりする場合の開発ライフサイクルの様子を調べます。私たちはDevOpsにちょっとばかり飛び込み、KubernetesやELKスタックのような、さまざまなメトリックと集中化されたロギングツールがどのように依存するかを見ていきます。最後に、コミュニケーション、チーム編成戦略、そしてそれらがMicroservices開発チームの生存のために最も重要なツールである可能性が高い方法について説明します。navigationHomeJavaAWSFrontendAtlassianEventOther。