■nginx

・apacheのproxypathreverseの代わりの設定

nginxにはproxypathreverseに相当するディレクティブが無いらしいんご。

レスポンスのlocationヘッダ内を書き換える?

・proxy_redirect設定

・TLSとSNI

リバースプロキシサーバが名前ベースのvirtual hostにリクエストを振り分ける際には、リクエスト内のhostヘッダ内のFQDNを取り出す必要があるが、TLSで暗号化されたリクエストを復号化するのは振り分け先のvirtual host内で行うために、リバースプロキシサーバとブラウザの両者がSNIを有効にしてある必要があるって話。

・バックエンドtomcatへのproxy

apacheのmod_jk、mod_proxy_ajp、mod_proxy_http を選択して正しく設定する際に考えたあんなことやこんなことはnginxでも考える必要があるのかって話

・X-Forward-for

バックエンド側にエンドポイントの接続元IPアドレスを伝えるためにリバースプロキシサーバが付与するヘッダ。目的は、バックエンド側のカスタムログに記録できるようにすることと、バックエンド側でホストベースのアクセスコントロールを行えるようにすること?

※ホストベースのアクセスコントロールは一番外側のFWの役割では???

・proxy-set-header

プロキシサーバでいろいろな問題を解決するために、ヘッダの付けかえをする

※ロードバランサのiRuleやプロキシサーバのこの機能を使ってヘッダの付け替えするのはいかがなものか?バックエンドのアプリケーションサーバでやらないで、途中でやるとシステムが複雑になってメンテナンス性が悪くなったり、せっかく高速で動作するnginxの処理能力をそぎ落としてしまわないか?

・nginx.confの中で使える変数、疑似言語の文法

nginx.conf内でif分岐を書いたり、疑似言語を実装するモジュールを-with-moduleオプションつけてビルドすることで「configプログラミング」的なことができるらしい

※せっかく高速で動作するnginxの持ち味である処理能力をそぎ落としてしまわないか?

 

■rabbitMQ

・そもそも何か?

・erlangってのが必須コンポーネントらしい

 

■erlang

・erlang自体でいろいろ盛りだくさんらしいんご

 

■postgresqlのリソース確認、チューニング設定

・メモリヒット率と各バッファサイズ(テーブル用、インデックス用、トランザクションログ用)

※そのほかに関数用とかsql用とかもあるの?

・indexの利き具合

※indexをカラムに作ると高速化するSQLと、indexのせいでかえって速度が落ちるSQL

・トランザクションログの書き込み速度改善

 

■tomcatの各種ログとそれぞれの意味

・その前にtomcatのファイルやディレクトリ構成の復習 tomcatはじめの2歩

・catalina.out   (設定ファイルはcatalina.sh)

・catalina.YYYY-MM-DD.log    (設定ファイルはlogging.properties) 

・gc.log  (java起動オプションで指定(java起動オプションはtomcat起動スクリプト内でsourceされるスクリプトで指定))

・localhost.YYYY-MM-DD.log   (設定ファイルはlogging.properties)

・localhost-access-log    (設定ファイルはserver.conf)

・host-manager.YYYY-MM-DD.log    (設定ファイルはlogging.properties)

・manager.YYYY-MM-DD.log   (設定ファイルはlogging.properties)

https://qiita.com/hidekatsu-izuno/items/ab604b6c764b5b5a86ed

 

■postgresqlの基本

 

■splingフレームワーク

どんな?

 

■log4j

 

■サーブレットコンテナしないとできないこと

・locationレスポンスヘッダをつけてリダイレクトを要求するサーバに対するプロキシサーバの動作確認

・samlレスポンスを受信して認可処理をするアプリケーションの動作確認

・トランザクションはアプリケーション側で実装するので、障害を模擬したフェールオーバの動作確認はサーブレットコンテナとWebアプリケーションが必要

・CYRENっていうウイルス対策ソフト

・巨大データをアップロードできるAPI?の実装

・log4jでログを書き出してみる

・spling フレームワーク

 

■tomcatのしくみ

・bootstrap

・その前にjvm やjavaSE

 

■tomcatやコンテナ内でJDBC経由でDBにsqlを飛ばすWebアプリケーションの動作確認

・リソース確認

・負荷試験

・パフォーマンスチューニング

・ヘッダ、cookie、xml、ファイルハンドル、API経由でJVM外部リソースとのプロセス間通信やシステムライブラリへのライブラリコールの動作確認

 

■その前にhtmlとWebサービスの復習

 

■そんでTCP/IPやパケットキャプチャ、OSのTCP/IPプロトコルスタックもなんか怪しい

10年位前からやってるのに今だにもっさりでうろおぼえ~ っていうか忘れてるんご

 

■OSやハードウェアやkernelのリソース確認

 

■サーバ仮想化技術

 

■ストレージ周り

 

■HAクラスタウェア

 

■監視エージェント

・syslogとsyslogプロトコルと各プロダクト(rsyslogd、syslog-ng)

・jounald systemdと密結合らしい

・snmpトラップを飛ばすsnmpエージェント

・その他監視エージェント zabbixとかtivoliとか各監視プロダクトごとのエージェントはそれぞれプロダクトごとの監視マネージャと専用の言葉で会話する。