サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大そうじへの備え
meetup-jp.nhncloud.com
ECMAScriptクラスフィールド(class field)の一覧に、プライベートフィールド(Private field)すなわちプライベートプロパティ(Private Property)(以降Private属性)があります。クラスフィールドのスペックは、Stage 3(Candidate)までアップグレードされたので、おそらくもうすぐStage 4(Finished)を経て標準スペックになるでしょう。初期の仕様文書を見たときは「ついにPrivateができるのか?」という期待感と「文法が少し変わっているな」という失望感だけで、現実味はありませんでした。時の流れとともに記憶が薄れていたところ、TypeScript3.8で正式にサポートされるというニュースを聞き、これを契機にPrivate属性について正しく学ぶことにしました。もちろん、これからはプロジェクトでも積極的に使うつもりです。Pub
はじめに 最近まで、GoogleのクラウドプロジェクトにKubernetesクラスタを作成していましたが、有料のため金銭的なコストをかけずにマルチノードクラスタを実践できる環境を構成したいと思い、自宅にあった4台の開発ボードordroid-xu4を活用してみることにしました。 エラー発生 Dockerをセットする過程で問題が発生しました。Dockerをインストールしてテストするため、簡単にビルドしたイメージをPullで受け取りコンテナを実行したところ、以下のように失敗しました。 jaeeunyoo@skynet-201:~$ docker pull frontiersofme/py-app Using default tag: latest latest: Pulling from frontiersofme/py-app ... Status: Image is up to date f
Redis? Redisは、REmote DIctionary Serverを略したものです。おそらくこの記事を読まれているほとんどの方は、Redisを使用したり聞いたりしたことがあることでしょう。 Who uses Redis? Redisはオープンソースなので、さまざまなサービスで自由に使用されています。上図からもわかるように、Airbnb、Uber、InstagramでもRedisが使用されています。TOAST File、Doorayなど、NHNの社内でも多くのチームがRedisを使用しています。昨年、Coupangで大きな障害がありましたが、その原因はRedisであることが明らかになりました。 パレートの法則(Pareto principle) ところで、パレートの法則をご存知ですか?私たちの社会で起こる現象の80%は20%の原因によって発生している、ということを意味する法則です。
連載 LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 1編 4.ネットワークcapacity関連パラメータ 4.1 maximum file count Linuxをはじめとする一般的なUnixソケットは、まるでファイルのような扱いを受けます。 システム全体で保有できるファイル数が制限されていれば、当然ソケットの全体数にも影響を与えるでしょう。 Linuxでシステム全体が保有できる最大ファイル数は、fs.file-maxカーネルパラメータで設定します。 以下のようなコマンドで現在の設定値を確認できます。 $ sysctl fs.file-max fs.file-max = 775052 一般的に、この値は適度に大きな値が設定されているので、余程のことがない限り、修正することはないでしょう。 ただ、システムが非常に多くのファイルとソケットを使用している
(補足)logging.file.max-history File AppenderはRollingFileAppenderを使用します。ファイルのrollingポリシーがspring-boot 1.5.xまでは、SizeBasedTriggeringPolicyでファイルサイズが特定の値に達すると、新しいログファイルを残す機能のみサポートすることになっていました。そのため時間が経過したログを削除するには、サーバーから別にcrondを回すか、別途logback-spring.xmlの設定が必要でした。しかしspring-boot 2.0.0からrollingポリシーがSizeAndTimeBasedRollingPolicyに変更され、デフォルト設定でログが日別に残るようになりました。(例:spring.2018-01-01.log)logging.file.max-historyで指定し
ある日、友人から電話があり「REST APIって何?」という質問を受けましたが、「それはRESTにクライアントとサーバー間でデータを送受信する方式のことだよ」といった程度で思うように説明できませんでした。実際にREST APIのサービスを開発した経験もありますが、いざ説明しようとすると難しいですね。そこで今回、REST APIについて整理してみました。基本的なREST APIのほか、REST APIを設計する際に参考すべきいくつかのTipsを共有したいと思います。 1. REST APIの誕生 RESTはRepresentational State Transferという用語の略で、2000年にロイ・フィールディング(Roy Fielding)の博士論文で初めて紹介されました。ロイ・フィールディングは、HTTPの主な著者の一人で、Web(HTTP)の設計の優秀さに比べて適切に使用されていな
連載 LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ- 1編 LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ- 2編 5. TIME_WAIT socket TIME_WAIT状態のソケットは、利用可能なlocal port数を軽減させて同時に保有できるクライアントソケットの数を制限します。 5.1 TIME_WAIT socketとは? TIME_WAIT状態のソケットは、いつ発生するでしょうか? まず、TCPソケットの状態フローを見てみましょう。 上図から分かるように、active closingするソケットの最後の終着地がTIME_WAITの状態です。 言い換えれば、クライアントソケットであれ、サーバーソケットであれ、close()システムコールを先に呼び出した側(active closing)が最終的にそうなり
1.はじめに ネットワークのパフォーマンスを決定付ける最も重要な要素は、最終的にはアプリケーションにあるでしょう。ただ、ワークロードの特性によっては、デフォルト設定されたTCPカーネルパラメータが制約となり、パフォーマンスを発揮できないときもありますね。 非常にたくさんのカーネルパラメータがありますが、本文では、ネットワーク帯域幅(bandwidth)のカーネルパラメータ、ネットワーク容量(capacity)のカーネルパラメータを主に扱います。 2.準備 Linuxはsysctlコマンドで簡単にカーネルパラメータを実行時に変更できます。 次のようなコマンドを使用すると、現在のカーネルパラメータ設定値の全体を閲覧できます。 $ sysctl -a ここで取り上げるネットワークは、特にTCPのcapacityとbandwidthなどを調整(tuning)できるカーネルパラメータのごく一部を紹介
はじめに 今回は、Spring Web Applicationで使用するFilterとInterceptorについて、紹介したいと思います。 実行時 一般的な内容 FilterとInterceptorは、実行される時点が異なる。 FilterはWeb Applicationに登録して、InterceptorはSpringのContextに登録する。 追加で紹介したい内容 Tomcatの場合、deployment descriptor(/WEB-INF/web.xml)に使用するFilterを登録します。そのため、アプリケーション全体に影響を与える作業はFilterにする、という意見があります。しかし実際はそうではありません。FilterもInterceptorもすべての要求に対する前後処理の役割を遂行します。またuriベースで、いつ実行するか調整可能で、直接requestの内容を把握し、希
JavaScriptの大きな特徴の1つは、「シングルスレッド」基盤の言語だという点です。スレッドが1つということは、同時に1つの作業だけを処理できるということです。しかし、実際にJavaScriptが使われる環境を考えてみると、多くの作業が同時に処理されていることが分かります。例えば、Webブラウザは、アニメーション効果を見せながら、マウスの入力を受けて処理をし、Node.js基盤のWebサーバーでは、同時に複数のHTTPリクエストを処理したりします。スレッドが1つなのに、どうしてこのようなことができるのでしょうか?質問を変えると、「JavaScriptはどのように同時実行(Concurrency)をサポートしているのでしょうか?」 このとき登場する概念が「イベントループ」です。Node.jsを導入した際、イベントループ基盤の非同期方式でNon-Blocking IOに対応して…」のような
このページを最初にブックマークしてみませんか?
『NHN Cloud Meetup』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く