サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
パリ五輪
spring-boot-camp.readthedocs.io
4. JMSを使ってみる¶ 前章では画像処理サーバーをSpring MVCで作成しました。一般的に、画像処理のような重い処理を同期実行していくと、 同時リクエストによってリクエスト処理スレッドが枯渇しやすくなってしまいます。 そこで、画像処理リクエストを受けてもすぐに処理は行わずレスポンスだけ返し、実際の処理は非同期で行うことを考えましょう。 本章ではJMS(Java Message Service)を使用して、非同期プログラミングを試します。次章で画像処理サーバーのJMS対応を行います。 HTTPリクエストを受けたControllerは、すぐに本処理を行うのではなく、本処理に必要なデータを詰めたメッセージをJMSに対応したメッセージキュー製品に送信します。 メッセージ送信が完了すればHTTPレスポンスを返却します。 送信されたメッセージは受信側によって取り出され、本処理がおこなれます。J
<profiles> <profile> <id>macosx-x86_64</id> <activation> <os> <family>mac</family> <arch>x86_64</arch> </os> </activation> <properties> <classifier>macosx-x86_64</classifier> </properties> </profile> <profile> <id>linux-x86_64</id> <activation> <os> <family>unix</family> <arch>amd64</arch> </os> </activation> <properties> <classifier>linux-x86_64</classifier> </properties> </profile> <profile> <id
1. [事前準備] Spring BootでHello World¶ Spring BootプロジェクトをMaven Archetypeから作ります。今回は拙作のspring-boot-docker-blankを使用します。 このMaven ArchetypeにはDockerデプロイするための設定が予め行われています。 以下のコマンドでプロジェクトを作成しましょう。ターミナルまたはコマンドプロンプトに貼付けてください。 Bashを使っている場合 $ mvn archetype:generate -B\ -DarchetypeGroupId=am.ik.archetype\ -DarchetypeArtifactId=spring-boot-docker-blank-archetype\ -DarchetypeVersion=1.0.2\ -DgroupId=kanjava\ -Dartif
7. STOMP over WebSocketで非同期処理結果を受信する¶ 本章ではJMSのMessageListenerの画像処理結果をSTOMPの宛先に送り、クライアントで表示させます。 STOMPの結果を送信するためにSimpMessagingTemplateを使用します。これまで使用したJmsMessagingTemplateとほぼ同じインターフェースです。 画像はHTMLで表示しやすいようにbyte[]に変換した後、Base64にエンコードして送信します(これも非効率)。 以下のコードを追加してください。 @SpringBootApplication @RestController public class App { // ... @Autowired SimpMessagingTemplate simpMessagingTemplate; // ... @Configurat
6. STOMPを使ってみる¶ 前章でMessageListenerで非同期に画像処理を行いましたが、処理結果がクライアントには返ってきていません。 今度は処理結果もメッセージングで送るようにしましょう。ここではメッセージングプロトコルとしてSTOMPを使用します。 STOMPは「Simple (or Streaming) Text Orientated Messaging Protocol」の略で、軽量なメッセージングプロトコルです。 TCPやWebSocket上で利用できます。 本章ではSTOMP over WebSocketの簡単な使い方を学びましょう。 まずはpom.xmlに以下の依存関係を追加してください。 <!-- WebSocketプログラミングに必要な諸々 --> <dependency> <groupId>org.springframework.boot</groupId
前提条件¶ Java SE 8がインストールされていること。 Mavenがインストールされていることかつ基本的なことが分かること。 Gitがインストールされていること。 curlがインストールされていること。 OSがWindowsまたはMacOSであること。 DIの基本的な知識を有していること。 JavaでWebプログラミングの経験があること。 (カメラを使う場合)PCにカメラがついていること。 (Dockerを使う場合)boot2dockerがインストールされていること、またはAWSのアカウントを持っていること。
このページを最初にブックマークしてみませんか?
『spring-boot-camp.readthedocs.io』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く