タグ

ブックマーク / qiita.com (20)

  • Kubernetes: 詳解 Pods の終了 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Pods は Kubernetes の中でもっとも重要なリソースです。複数のコンテナとボリュームの組み合わせで Kubernetes におけるスケールの最小単位であり、アプリケーションコンテナは必ず Pods としてデプロイされます。 ここでは Pods の終了の流れについて詳しく扱います。Deployments の更新などで新しいバージョンのアプリケーションをデプロイするとき、既存の Pods は終了されます。このとき正しく Pods の終了処理を準備できていないと、ユーザのリクエストが正しく処理されずエラーが出力されている

    Kubernetes: 詳解 Pods の終了 - Qiita
  • GKE/Kubernetes でなぜ Pod と通信できるのか - Qiita

    Google によるフルマネージドサービスである GKE では Kubernetes のマスタやノードのことは理解しなくとも KubernetesAPI を使って実現したいことに集中できる。 しかし、番運用をはじめてから「なぜ動いているのかもなぜ動かないのかも分からない」というような状態ではいざという時に困る。 特に Service がどのようにクラスタの外から Pod へのアクセスを提供しているのかはブラックボックスになっていたため、今回は GKE での Service の L3(〜L4) の挙動について Kubernetes の内外を調査した。 (後で図や参照情報へのリンクを追加予定) 図解が出てきたので追加しなかった。 追記(2018年10月5日) Kubernetes Engine の Network Overview が良いのでこちらも読むと良いでしょう。この記事を書いた

    GKE/Kubernetes でなぜ Pod と通信できるのか - Qiita
  • 翻訳: WebAPI 設計のベストプラクティス - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? これは Enchant の開発者である Vinay Sahni さんが書いた記事「Best Practices for Designing a Pragmatic RESTful API」1を、ご人の許可を得て翻訳したものです。 RESTful な WebAPI を設計しようとすると、細かなところで長考したり議論したりすると思います。また、他の API に倣ってやってはみたものの、当にそれでいいのか、どうしてそうしているのか分からない、何てことも少なくはないと思います。 この記事では、そのようなハマリどころについて Vinay さん

    翻訳: WebAPI 設計のベストプラクティス - Qiita
  • RailsでAPIをつくるときのエラー処理 - Qiita

    例外を利用して実装すると便利な場合が多い この投稿では、HTTP経由でJSONを返すようなWeb APIRailsを利用して実装するとき、エラーレスポンスを返す場合の処理をどう実装するとやりやすいのか、というニッチな話題に触れる。APIでエラーを返したいとき、即ち400以上のステータスコードと共にレスポンスを返したいような場合、どう実装するのが良いか。もしリクエストの処理中にエラーが検出された場合、それ以降の処理を行わずに直ちに中断してエラーレスポンスを返したいという場合が多いため、例外を利用して実装すると便利な場合が多い。 例外を利用しない方が良い場合もある 1つのリクエストに複数の問題が含まれている場合、先に見つけた問題だけを報告するようなエラーレスポンスを返すのか、それとも問題を抱えながらも進めるところまで処理を進めて報告可能な情報を全て含むようなエラーレスポンスを返すのか、という

    RailsでAPIをつくるときのエラー処理 - Qiita
  • Ruby の OptionParser チートシート - Qiita

    require 'optparse' class Test class CLI def parse_options(argv = ARGV) op = OptionParser.new # op がローカル変数なので `define_method` で `usage` を定義しているが、ただのこだわりに過ぎないと言えばその通り self.class.module_eval do define_method(:usage) do |msg = nil| puts op.to_s puts "error: #{msg}" if msg exit 1 end end # default value opts = { boolean: false, string: '', integer: 0, array: [], } # boolean op.on('-b', '--[no-]boolean'

    Ruby の OptionParser チートシート - Qiita
    Spring_MT
    Spring_MT 2017/09/13
    さすがのsonots先生 知りたいこと書いてあった “※ なぜわざわざこんなことを書くかというと、thor の場合は、:long_option と指定した場合、--long_option でも --long-option (ハイフンになっている) でもどちらでもコマンドラインか
  • Wireshark便利機能メモ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? を読んでWiresharkを使う上で便利だった機能のメモ。 参考 パケットキャプチャ入門 第3版 (LANアナライザWireshark活用術) 環境 Mac OS X 10.11.4 Wireshark 2.0.2 パケットの内容をテキストやCSVに出力 tcpdumpコマンドなどで取得したpcapファイルはバイナリなのでテキストにしたい場合には便利。 File->Export Packet Dissections->As Pain Text File->Export Packet Dissections->As CSV なお、特定の

    Wireshark便利機能メモ - Qiita
  • ActiveRecordを速くしたいだけの人生だった - Qiita

    Help us understand the problem. What is going on with this article? Rails3.2からRails4.2に上げたらActiveRecordが遅くなったので、どうやって調査して、どのように対処したかを語ってみたい。 とても長いので、ダルい人は最初と最後だけ読めばよいです。 TL;DR 環境: Ruby 2.1.5 ARオブジェクトを大量に(ざっくり750kくらい)loadするバッチ処理 3.2系での実行時間は約480sec、 4.2系では約2900sec 約6倍の性能劣化 原因: preloadで性能劣化してた CollectionProxyの生成周りで遅くなってた Rails4からARオブジェクトの1attribute毎にObject生成するので遅い GCの時間も増えた 調査方法: Githubのcommit、Issueを

    ActiveRecordを速くしたいだけの人生だった - Qiita
    Spring_MT
    Spring_MT 2015/04/15
  • Intentを用いたActivity間のやりとり - Qiita

    Activityを呼び出す IntentとstartActivity() 自分のActivityから他のActivityを呼び出すときは、Intentを作ってstartActivity()にそれを渡して呼び出すっていう流れ。Intentには明示的Intentと暗黙的Intentがあるけど、その話は省略で、詳しくは家のドキュメントを読むこと。 暗黙的Intentでは、たとえば特定のURLを開きたい場合には、このような形

    Intentを用いたActivity間のやりとり - Qiita
  • Golang でのウェブ開発を考えてみる - Qiita

    Help us understand the problem. What is going on with this article? 仕事Golang を使ってウェブアプリを作ることになりそうなので、どんな構成がいいのか考えてみる。あくまで前提ありきの選択なので、何でもかんでも適用できるわけではない。 JS や静的ファイル部分は今のところ考慮していない。単によく知らないので。 突っ込み大歓迎です。これいいよ!とか教えてください 前提 多機能なフレームワークよりシンプルなフレームワークに色々組み合わせる方法をとりたい。 開発者は数名程度。Golang に精通している開発者が 1 名いる。残りはこれから。 開発者は Django での開発経験が豊富な人が多い 全員ウェブ開発経験はそれなりに積んでいる。 HTML と JSON 両方のパターンが存在するのでテンプレートエンジンは重要。 JS

    Golang でのウェブ開発を考えてみる - Qiita
  • Rubyで「スレッドの同時実行数を制限する」シンプルな方法 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Rubyで「スレッドの同時実行数を制限する」シンプルな方法 - Qiita
  • Web な人もアプリな人も、これから新しく Android アプリを作るなら抑えておきたいポイント3選 - Qiita

    概要 Lollipop が発表されてから時間も立ち、Android Auto、Android Wear、Android TV と、多様性を見せ始めた Android ですが、今後とも多種多様なデバイス向けに様々なアプリを作っていく流れがあるなか、新しくアプリを作るなら抑えておきたい要所をまとめました。 TL;DR 抑えるところは 3 つ。 画面とライフサイクル 非同期処理 互換性 かなり端的にいうと、Activity や Service などのライフサイクルとうまく付き合いながら、コードの構成のレイヤー化を行い、非同期処理を簡潔に記述できる準備をしておくことと、非同期処理とあわせてマルチスレッドプログラミングの基を抑えておくこと、互換性への準備を最初にしておきましょう、という話です。 画面とライフサイクル MVC を基として、データ構造を定義して Activity や Fragment

    Web な人もアプリな人も、これから新しく Android アプリを作るなら抑えておきたいポイント3選 - Qiita
  • [翻訳] android best practice - Qiita

    githubで★を集めてるandroid best practiceが勉強になるなぁと感心しておりまして、 思い切って翻訳していいかどうか問い合わせてみると快諾いただけたので翻訳してみました。 (Eclipse + ADTの話もでてますがそのまま訳してます。) 原文 : https://github.com/futurice/android-best-practices (Qiitaに投稿するついでに家のリポジトリにもプルリクしてくれって言われてるので少し待てばそちらでも見れると思います。) この場を借りて、@askaさん、添削ありがとうございましたm_ _m 大変助かりました。 Summary Gradleで推奨されるプロジェクト構成で開発しよう パスワードや注意を要するデータはgradle.propertiesに書こう 自分でHTTP Clientは作らず、VolleyやOkHttp

    [翻訳] android best practice - Qiita
  • これから仕事でAndroidアプリを開発するための参考書籍 - Qiita

    これから、Androidでフルネイティブアプリを開発するにあたって参考になりそうなやURLなどを書きます。 また、このが良かった。このURLの情報がすごい参考になったなどあれば、教えてください。 書籍 Android Pattern Cookbook マーケットで埋もれないための差別化戦略 Androidはレイアウト周りの操作が、かなりめんどくさいのですが、これは良いです。 サンプルアプリとソース見て、使えるポイントが結構あります。 Effective Android 読み物的な要素が強いですが、実装で役に立つことが色々書かれてあります。 デザイナー的なことも書いてあるので、幅広く参考になります。 Androidオープンソースライブラリ徹底活用 知り合いのAndroidアプリエンジニアがおすすめしてくれました。 ライブラリの多用はそこまで推奨されないが、良さそうなものを取り入れていくの

    これから仕事でAndroidアプリを開発するための参考書籍 - Qiita
  • Railsのルーティングを読みやすく作っていく - Qiita

    Railsアプリケーションのルーティングは、config/routes.rb1ファイルで最初は開発を始めると思います。 ただ、サービスを運用していくとルーティングは膨らみ、メンテナンスコストも馬鹿になりません。 そのため、ルーティングの設定をできるだけメンテナンスしやすく作っておくことでそのコストを下げようという試みです。 Railsのルーティングは、config/routes.rb がルーティングの設定ファイルにデフォルトで指定されています。 ただ、これは変更可能ですし、複数のファイルに分割もできます。 昨今のアプリケーションの用途は、Web、native(iOS、Android)、APIサーバ、と多岐にわたるので、

    Railsのルーティングを読みやすく作っていく - Qiita
    Spring_MT
    Spring_MT 2014/08/10
    お やるかな
  • 《REST思想》と《リソース指向》と《Webページ》を一緒にしてはいけない - Qiita

    の情報はJSONで表現されます。/books にGETリクエストした場合はレスポンスとしての一覧がJSONとして返されます。 の追加や削除を行う場合は、情報をJSON形式でPOSTリクエストのボディとして送ります。application/x-www-form-urlencoded形式で送ることは避けるべきです。 更新に失敗した場合、失敗した理由をJSON形式で返します。 ステータスコードは、取得時・更新成功時には200 OKを、更新失敗時には4XX番代を使うのがよいでしょう。 情報はJSON形式と書きましたが、XMLなどでも構いません。 しかし、正常系・異常系ともにアプリケーション内で統一された形式を利用してください。 リソース指向 の情報は/booksにあるとして、拡張子を変えることで、様々なフォーマットでデータを利用できるようにします。 例えばの一覧をJSON形式で欲しけ

    《REST思想》と《リソース指向》と《Webページ》を一緒にしてはいけない - Qiita
    Spring_MT
    Spring_MT 2014/08/10
    Jxck_ sanのコメントを読んでる
  • 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? あわせて読みたい 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 「オブジェクト指向プログラミング」と「関数型プログラミング」のたった一つのシンプルな違い あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 2015年に備えて知っておきたいリアクティブアーキテクチャの潮流 この記事について この記事は新人向けの研修内容を再編集してお送りいたします。 ここで述べる内容はどのようにして現在のプログラミングスタイルが生まれてきたかを

    新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita
  • Ruby 2.1.1 GC Tuning - Qiita

    Help us understand the problem. What is going on with this article? Ruby2.1では、RGenGCによりかなりパフォーマンスが改善されている。 また、チューニングパラメータが増えているが、まとまった日語の解説が無かったので書いてみた。 間違いがある可能性があるので、指摘は歓迎です。 RGenGCとは RGenGC(Restricted Generational Garbage Collection)については、まずはこれを読むべし www.atdot.net/~ko1/activities/rubyconf2013-ko1_pub.pdf www.atdot.net/~ko1/activities/2014_rubyconf_ph_pub.pdf Ruby 2.1: RGenGC · computer talk by

    Ruby 2.1.1 GC Tuning - Qiita
  • httpsだからというだけで安全?調べたら怖くなってきたSSLの話!? - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    httpsだからというだけで安全?調べたら怖くなってきたSSLの話!? - Qiita
  • Ruby - Qiita Advent Calendar 2013 - Qiita

    About reserved postingIf you register a secret article by the day before the same day, it will be automatically published around 7:00 on the same day. About posting periodOnly articles submitted after November 1 of the year can be registered. (Secret articles can be registered anytime articles are posted.)

    Ruby - Qiita Advent Calendar 2013 - Qiita
    Spring_MT
    Spring_MT 2013/12/19
  • GitHubでFork/cloneしたリポジトリを本家リポジトリに追従する - Qiita

    2019/12/11 分かりやすいサイトへのリンクを追加しました hub コマンドの hub fork について追加しました 2013/04/11 興味深い手法があれば随時追加していきます ネットを検索すると、色々な手法が出てきますが、自分としては「WEB+DB PRESS plus 開発ツール徹底攻略」p.71 に載っていた以下の手法がシンプルで良く理解できました。 家リモート upstream を追加する方法 家リポジトリの例として、実際にGitHubに存在する練習用リポジトリ git@github.com:DQNEO/Renshu.git を使います あなた (youraccount) が既にForkしているRenshuリポジトリをcloneします。 $ git clone git@github.com:youraccount/Renshu.git Cloning into 'R

    GitHubでFork/cloneしたリポジトリを本家リポジトリに追従する - Qiita
  • 1