前に公演時間も公開されましたので、1日目も変更しております。原文はこちらにございます。Reactorをベースにしたリアクティブプログラミングのサポートがあります。5は、Reactive処理をサポートするように適応されたMVCのようなコンポーネントモデルと、新しいタイプのWebエンドポイント、ファンクショナルなエンドポイントを統合しています。この講演では、新しくNettyベースのWebランタイムと、それを既存のSpringスタックテクノロジと統合する方法を見ていきます。9:50amリアクティブWebアプリケーションは、ここでは奇妙な流れ、スケーラビリティと恐ろしいデバッグ経験が約束されています。現場のUIをいくつか紹介します。9:50amライブコーディングとデモです!このプレゼンテーションでは、Spannerの概要、最初のインスタンスとデータベースのセットアップ方法について説明します。テラバイトのデータに拡張できるようになった最初のスキーマとクエリを考案するときは、設計上の意思決定を行います。コードやクエリとその説明を見て準備してきてくださいね。10:50am「マイクロサービス」という言葉が現れたら、多くの人はウェブサイトを動かすRESTエンドポイントのことを考えるでしょう。バッチおよび統合スタイルのワークロードに12の要素の概念を適用すると、膨大なメリットが得られます。Taskを使用した短命のマイクロサービスの両方のためのデータマイクロサービスの作成に取り掛かります。DataFlowを使用して、これらのマイクロサービスを有用なアプリケーションに編成する方法を見ていきましょう。Bootの一般的な知識は、この講演に役立ちます。10:50amマイクロサービス環境で最も重要なコンポーネントの1つは、ディスカバリサービスです。ここ数年の間に、特にコンテナインフラストラクチャの分野において、サービスディスカバリのための多数の代替案が進化してきました。このプレゼンテーションは、私の経験に基づいて、いくつかの選択肢を見ていきます。Kubernetesのディスカバリサービスコンポーネントについて説明します。Cloudを使用して、選択されたディスカバリサービスとは独立した、つまりコードの変更を必要とせずに任意の選択肢と共に使用できるマイクロサービスを作成する方法についても説明します。10:50amソフトウェアの脆弱性には、セキュリティバグと設計上の欠陥という2つの基本の要因があります。一般的なSQLインジェクションやクロスサイトスクリプティングの脆弱性などのセキュリティバグは、コーディングのエラーであり、すべて同じパターンに従うため、自動ツールで簡単に検出できます。セキュリティバグソフトウェア開発者が簡単に解決できるようになりました。ソフトウェア関連セキュリティ問題の半分はツールで検出できません。これらはソフトウェアに組み込まれた設計上の欠陥であり、Webアプリケーションの適用範囲に精通している人のみがこのような脆弱性を識別できます。今までは、ペンテストによって手動で検出する必要がありました。その結果、しばしばアプリケーションアーキテクチャーが刷新されました。これは、経済的なコストだけでなく、アプリケーションの市場投入までの時間の影響により重要な問題でもあります。この問題を解決するために私たちは何ができますか?この講演では、アプリケーションのセキュリティアーキテクチャとテストツールを初めて共同で使用することにより、アプリケーションを設計上の欠陥から保護し、それらを自動的に検証するソリューションを紹介します。RESTに基づくSpring参照アプリケーション(PetClinic)を使用し、Burpなどのよく知られているペンテストツールを使用した実用的な例を示します。12:20pm多くの企業にとって、収集するデータと構築するデータセットは、最も貴重な資産です。これらのデータセットが増加するにつれて、これらの組織がデータの中で分析して意味を見つけることがますます重要になり、Hadoopのようなよく知られたツールに行き着きます。過去数年間で、次世代のデータ分析ツールが登場しました。Sparkが注目されています。Sparkは、クラスターコンピューティングのフレームワークで、関数プログラミングインターフェースを使用して、複数のマシンに分散された復元力のあるインメモリーのデータセットに対してユーザーが計算を実行できるようにします。Foundationの最も活発なプロジェクトの1つです。Sparkは、永続化メカニズムとして使用できるさまざまなテクノロジをサポートしています。Cassandraです。Cassandraは、高可用性で拡張性の高いストレージが必要な場合に便利な、線形スケーラブルでフォールトトレラントな分散型データストアです。Apple、Facebook、Netflixのようなハイテク業界の大手企業で頻繁に使用されています。これらの2つの技術は複雑ですが、統合して、企業全体がコンサルタントと開発サービスを提供するこれらの2つの技術の周りに形成したようなレベルの有用性を提供します。XDとデータの統合を開始する方法を学びます。SparkとCassandraについては、上級者から話し合い、プログラムでプログラマチックに動作するようなコード例を紹介します。Cassandraでの配布とSparkによる一般的なパッケージング問題を回避するためにデータを適切にモデリングする方法と、それらを回避する方法など、これらのテクノロジを扱うときに実行する落とし穴について説明します。最後に、ThirdChannelの現実の世界でこれらのテクノロジーをどのように使用しているかを見ていきます。Docsを紹介します。Docs拡張機能を1.5年以上使用しており、最近オープンソース化しています。Docsはテスト、イントロスペクション、Javadocを使用して自動的にリクエストを文書化します応答パラメータ。これでどれくらいの労力を費やしたのか、それがドキュメントの品質をどのように高めたのかを見ていきます。Docsは、コードとドキュメントの密接な結合を提案しています。このようにして、ドキュメントを最初に追加し、プラットフォームが進化するにつれて最新の状態に保つことが容易になります。プレゼンテーションでは、エクステンションの使い方を説明し、提案されたアプローチの賛否両論について議論します。現実の実装として独自のシステムを提示し、テスト、Bean検証、Javadocの再利用のメリットとAsciiDocの自由度を活かしドキュメントを生成します。Bootの最も強力な機能の1つは、オートコンフィギュレーションです。この魔法は、Java開発者の生産性を大幅に向上させたコンベンション・オーバー・コンフィグレーションのアプローチの鍵です。私たちはそうは思わない。Bootの中を見ていきます。オートコンフィギュレーションとそれを強化する条件付き構成モデルについて学習し、Springブートアプリケーションを作成する際の生産性を向上させます。Designの内部ビルディングブロックの一部であり、疎結合のMicroservice環境の実装でも中心的な役割を果たします。このワークショップでは、ドメインイベントの概念について深く掘り下げ、ドメインイベントをモデル化して設計する方法と、Springブートアプリケーション間の内部と外部の通信にそれらをどのように使用できるかについて学びます。Bootでドメインイベントを扱う方法を学びます。SourcingやCQRSなどのトピックを簡単に見ていきます。5を活用して機能的なWebアプリケーションを効率的に構築する方法を紹介します。Kotlinの機能的Webアプリケーション[2]を実演する予定です。Brauneisあなた自身のCIシステムをローリングすることは容易ではありません。CI、CodeShip、Drone.io、travisなどの新しいソリューションやテクノロジーの登場により、適切なソリューションの選択はますます難しくなっています...しかし、特定のニーズがある場合、ジェンキンスの柔軟性と比較できるソリューションはほとんどありません。jenkinsインスタンスの設定、設定、管理は、特に、異なる開発環境(Java、Node.js、go、...)を使用している複数のチームをサポートしている場合、面倒な仕事になる可能性があります。多くの場合、プロジェクトごとにシステムを手作業でチューニングし、更新を維持するには数日かかることがあります。swarmを使用してjenkinsを実行する方法、すべてのビルドジョブはコード(jenkinsfile)を使用して構成されているため、gitの履歴ですべての変更が考慮されます。ドッキングされたビルド・コンテナを使用するため、すべての可能なビルド環境をサポートするのが簡単になります。デモとして、舞台環境に構築、テスト、ドッキング、展開される春に基づいたWebアプリケーションを使用します。LDAP認証、SSH鍵交換、自動DNS更新など、より詳細なトピックを許可する時間について説明します。このセッションを最大限に活用するには、ドッカーとドッカーの作成を強く理解することをお勧めします。SasidharanJHipster(https://jhipster.github.io/)は、シンプルなWebアプリケーションや複雑なマイクロサービスを数分で作成するために広く使用されているオープンソースのアプリケーションジェネレータプラットフォームです。JHipsterは複雑なマイクロサービスアーキテクチャを簡単に生成できます。JHipsterには、可能であると思ったよりも速くアプリケーションを生成、コード化、展開するためのツール、ヒント、アイデアが満載されています。KS(JHipsterプロジェクトの共同リード)が、JHipsterを使用してゲートウェイ、サービス、レジストリ、および監視機能を備えたフルハンドのマイクロサービスアーキテクチャを作成し、Dockerで展開する方法を紹介します。Petrenkoモノリシックアプリケーションが大きければ大きいほど、依存性セットは大きくなります。依存関係を追加または変更するのは難しい作業です。同様に、複雑さは多くのBeanとコンポーネントコンテナ内の依存関係にあります。この講演では、コンポーネントコンテナをより小さなコンポーネントに分割することで、単純化する方法について説明します。モノリシックのApplicationContextをいくつかのサブコンテキストに分割する方法、サブコンテキストの内部Beanを分離する方法、APIをクリアする方法、および非自明な依存関係を回避する方法について説明します。それぞれのサブコンテキストは独自のクラスパスを持つことができ、それは依存関係の問題に対処します。分割された後、モノリシックシステムは、一連のマイクロサービスまたはプロセスに分割しやすくなります。Jalukarキャッシングのような難しい問題をテストする方法や、外部API呼び出しを行わずに統合テストを書く方法を知りましたか?または、何かをテストすることが非常に難しく、決してテストされなかったという状況に遭遇しましたか?多くの開発者は、軽量ユニットテストの作成方法が不明な状況に遭遇しています。Boot注釈とユーティリティの使い方を簡単に説明します。Cloud機能は、Springブートアプリケーション用の新しいプログラミングモデルを提供し、トランスポートの詳細とインフラストラクチャをすべて抽象化し、開発者がすべての使い慣れたツールとプロセスを維持し、ビジネスロジックにしっかりと集中できるようにします。このプレゼンテーションに参加して、この新しいプロジェクトの機能と、アプリケーションを構築する方法を変更する理由について学びます。CacheをSpring(Boot)アプリケーションに統合する方法を示します。JCacheは、キャッシュアクセス用の新しい標準APIで、バージョン4以降、Springが理解できる一連の注釈が付属しています。メソッドに注釈を追加することで、待ち時間の長いアプリケーションで数十倍の速度向上を達成できます。Springアプリケーションでこれらの標準注釈を使用する方法、どの注釈を使用するか、そしてカバーの下で自動的に起こっていることについて紹介します。あなたは、あなたのコードに12文字を追加するように促されます。logging分散システムでは、ロギングが重要な役割を果たします。適切に実行された場合は、最も必要なときに役立ちます。Foundryに移行しています。Starterを開発しました。このようにして、チームはアプリケーションのビジネスロジックの開発に専念できます。私たちのSpringブートスターターは、trackingId、サービス名などの重要なロギングメタデータを自動的に記録します。このプレゼンテーションでは、シンプルでパワフルなSpringブートスターターを開発することによって、分散システムのログインの問題に取り組んでいます。Pilimon(!!!)ワークショップの前に、ここに記載されている手順を完了してください。Streamを使用して、最初からアプリケーションを構築します。publish-subscribeシナリオをシミュレートし、Twitterが以前に持っていた厳密な問題を解決します。Twitterを400から8台のサーバに移行するのと同じソリューションを実装する予定です。...)また、ツールなしでワークショップに参加したり、ディスカッションに参加することもできます。フォームは柔軟になります。スライド、図面、ディスカッション、演習などがあります。Releaseトレインはコアモジュールの主要なバンプに近づきます。このセッションでは、Java8のベースラインアップグレード、遅延コンポーネントの初期化、反応的なデータアクセスに重点を置いて、Springデータの主要概念を再検討します。コードサンプルは、MongoDBで無限ストリームのような一般的な戦略とストアの詳細を概説しています。Platformで標準のSpringブートアプリケーションを実行する方法をご覧ください。シームレスなスケーラビリティと統合されたツールをテストおよび診断に使用して、実稼働環境でアプリケーションで起こっていることを把握する方法を実証します。Engineの柔軟性とKubernetesという2つのアプローチを使用して、ビルドツールを使用してアプリケーションをクラウドにデプロイすることで、この流れを説明します。projectsどんな種類のアクティビティでも、始めることはしばしば最も難しく、オープンソースプロジェクトに貢献することも例外ではありません。あなたの貢献をキックスタートする方法を見つけるために、Springプロジェクトの定期的な貢献者がこのトークに参加してください!このセッションでは、オープンソースコミュニティーとSpringプロジェクトの貢献者としての著者の旅についての話です。Sessionのコミッターになる見通しです。このセッションでは、フォークの管理、プルリクエストの更新、テストの作成、コードの一貫性などのトピックの重要性を強調し、Springプロジェクトへの一般的なプルリクエストの背後にあるワークフローについて深く掘り下げて説明します。貢献は成功した経験です。Falk最近、マイクロサービスの複数のインスタンスをドッキング・イメージまたはクラウドで実行することが広く採用されています。Vault設定プロジェクトを使用して秘密を安全に保存する方法を学習します。最初に、すべてのアプリケーション設定値をgitリポジトリに外部化する方法について簡単に説明します。次に、ボールトへの一般的な導入後に、スプリングクラウドボールト設定がどのようにしてボールトのアプリケーションへの統合を容易にするかを確認します。このセッションの後、あなたは外部化された構成の使用を開始し、秘密を安全でない方法で保存するのをやめさせてくれることをうまく覚悟しています。navigationHomeJavaAWSFrontendAtlassianEventOther。