成長は小さな失敗の積み重ね 事業を支えるCARTAのフルサイクルエンジニアリング / growth-for-small-fail-fast-carta-fullcycle
![[試して理解] Linuxのプロセススケジューラのしくみ - Speaker Deck](https://cdn-ak-scissors.b.st-hatena.com/image/square/d2331d68985fbb5a2030c639e9be29aa6b26e82b/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Fc79eaa971179471b88a960212a01e87b%2Fslide_0.jpg%3F11188762)
多言語化対応における TypeScript の型定義を通して開発のしやすさについて考えた / TSKaigi TypeScript Multilingualization
原文は2015年8月22日時点のものを利用しており、それ以降に追記、更新されている可能性があります。 本翻訳は原作者の許可を得て公開されています。 Thanks for GreyCat! このページはBashプログラマーが陥りがちなよくあるエラーについてまとめました。以下の例は全てなんらかの欠陥があります。 クオートをいつも使い、どんな理由があっても単語分割を使わなければ、多くの落とし穴からあなた自身を守ることができます!単語分割はクオート表現をしない場合にはデフォルトでオンになっている、Bourneシェルから継承された壊れたレガシーな設計ミスです。落とし穴の大半はクオートされていない展開になんらか関連し、単語分割しその結果をグロブします。 1. for i in $(ls *.mp3) BASHプログラマーたちがループを書く際にもっとも犯しがちなよくあるミスは以下のような感じです。: f
タイトルはかなり挑戦的(?)ですがあまり気にしないでください。 ※注意 このエントリで紹介しているオプション、コマンドはCentOSでしか動作確認をしていません。 その他ディストリビューションや、インストール方法によっては挙動が異なる場合があります。 「less」 使ってますか? エンジニアなら普段Linuxに触る機会が多々あるかと思います。 エンジニアのみならずMacだったりUbuntuだったりで私用PCでもターミナルが使えるようになっている方は多いかもしれません。 私は普段の仕事ではサーバの運用管理をしています。 仕事柄触る頻度が高いのはLinuxサーバです。 そして、使うのは大体CLIです。 そもそもLinuxでGUIを触る機会がなかなかありません。 大体リモートからターミナルで接続してCLIでちょいちょいっと処理をする感じですね。 GUIである場合でもLinuxを使っていればターミ
要点 ⑴sudoした場合は環境変数を引き継がない。 ⑵sudoで環境変数を引き継ぐにはsudo -E some_commandかsudoersにenv_keepを書く。 ⑶sudo ${pathが通っているコマンド}を実行する場合、カレントユーザのpathによって実行するコマンドが決まる。 sudoについて調べたきっかけ 今まで「root権限でコマンドを実行したい場合」にsudoを使っていたのですが、 とあるrubyのスクリプトをsudoで実行したところ以下のようなエラーがでました。 $ sudo /usr/local/hoge/fuga.rb /usr/local/hoge/fuga.rb:3:in `require': no such file to load -- thor (LoadError) from /usr/local/hoge/fuga.rb:3 rootとカレントユーザ
こんにちは。今回はLinuxのシステム情報を入手するコマンド特集です。システムの設定やハードの情報を入手する際に役立ちそうなコマンド(というかCUI操作)を独断と偏見でピックアップします。ディストロやバージョンによって設定ファイルやコマンドは変化しますので注意してくださいね。(本記事のコマンドは2014年9月時点のものです) CPUやメモリの情報を調べる CUPの情報を得る $ cat /proc/cpuinfo 出力例 processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz stepping : 6 microcode : 0x60c cpu MHz : 800.000 cache size : 3072
最近はクラウド上のサーバーを利用する事も多くなってきた。 サーバーの用意やネットワーク周りの設定はインフラ部門がやってくれるけど、アプリのデプロイ/設定は開発者がする事が多いので、開発メインでやってるエンジニアでも最低限SSHの知識は必要になる。 また、Vagrant等でローカル環境にVMを作成する事もあるので、ローカル環境内でSSHを使用するケースも増えてきた。 というわけでインフラエンジニアじゃなくてもSSHクライアントの知識は必須になってきているので、改めてSSHの再学習をしてみることにした。 SSHとは 暗号や認証の技術を利用して、安全にリモートコンピュータと通信するためのプロトコル。 SSHでは以下の点で従来のTelnetより安全な通信が行える。1 パスワードやデータを暗号化して通信する。 クライアントがサーバーに接続する時に、接続先が意図しないサーバーに誘導されていないか厳密に
シェルスクリプトの中で、スペース区切りもしくはタブ区切りのレコードを扱うことがよくあると思います。 たとえば、前回のエントリ「AWS CLIとjqを使って、AWSのELBボリュームがアタッチされているEC2インスタンス名を出力するワンライナーを書いた - 双六工場日誌」のスクリプトの出力は以下のようになります。 i-ec56a9f5 vol-07d00601 servername i-ec56a9f5 vol-8f550991 servername このようなレコードの特定の列を取り出して、処理する際にどうするのが効率的か、というのがこのエントリのお題です。 非常に古い話題なので、昔からシェルスクリプトを書いている人には自明な話ではありますが、最近、シェルの標準機能の話を聞く機会がなく、失われつつある技術になってきている気がしているので、改めて確認ということで。 例として挙げたレコードから
先日「サーバーのセキュリティ設定がなにすればいいかわからない」と相談をうけまして。 自分も初心者の時どこまでやればいいかわからず手当たりしだいにやって沼に入っていたのを思い出しながら自鯖構築したときのメモを元にまとめてみました。 注意 セキュリティ対策は用途や場合などによって違います。 自分で理解したうえで自己責任でおねがいします。 対象読者 Linuxのサーバーを建て慣れていない人 Linuxはある程度さわれる人(自分でパッケージを入れたり、サービスを止めたりできる) ラインナップ ☆は導入の重要度と導入の容易さから個人的偏見からつけた値です。 4つ以上が"最低限やること"だと思ってください。 sshd
サーバーの扱いに慣れていない初心者の方を対象に、VPS(Virtual Private Server)を使ってWebサーバーを構築し、WordPressサイトを運用できるようになるまでの連載を始めます。 サーバーの構築方法については、中・上級者向けの情報は多く見つかりますが、 「初めてVPSに触れる方が、Webサイトを構築して運用できるようになるまでのノウハウ」 を体系的に解説しているサイトはあまり多くありません。 ネット上に存在している情報では断片的だったり、分からない専門用語が出てきたりして、途中であきらめてしまった方も多いのではないでしょうか? 本連載では、初心者の方でも「これさえ読めばVPSを構築できる!」ように、初歩から丁寧に解説します。 「今までレンタルサーバーを使っていたけど、一歩進んでVPSに挑戦してみたい」という方のお役に立てれば幸いです。 本連載は以下の構成で5回に分け
Photo by Sam MacCutchan どうも後藤です! もう10年以上になるでしょうか・・・ とにかくなんでもかんでも仮想化すればよいというこの風潮。paizaでも仮想化技術は大活躍中。インフラは仮想化技術の上に構築されているし、もちろんコードの評価環境だってばりばりの仮想環境上です。仮想環境ばっちこーい! いったいいつからこんな流れになったんでしょう?どこに基準を求めるかでだいぶかわりますけれども、執筆現在から考えると、こうした流れには35年くらいの歴史があります。使われる仮想化技術は時代とともにかわってきました。だいたいどの時代にも流行ってものがありました。 最近(2014年ごろ)の流行とえば、インフラの一番下にハイパーバイザを入れて、その上でDockerを動かして、管理にはChefやPuppetを使うといったものです。数年経てば状況は変わるでしょうけれども、とにかく楽をした
linux上のアプリケーションはプロセスとして起動されます。 プロセスを管理することはOS(ここではlinux)の重要な役割であり、プロセスのスケジューリング、割り込み、シグナル制御、優先度の制御、プロセスの切り替え、状態管理、メモリ管理などを行っています。 プロセスとは何でしょう? プロセスはCPU上で実行されるもので、タスクを完了するために、Linuxのカーネルが制御するあらゆるリソースを使うことができます。 スレッドとは何でしょう? スレッドは1つのプロセスから生成される実行単位です。同じプロセスから並行でスレッドを起動させることができます。 スレッドはメモリや、オープン中のファイルなどのリソースを共有することができます。同じアプリケーションのデータにアクセスすることができるのです。 プロセスはリソースを共有することができないので、これは大きな違いです。 言い換えると、スレッドは同じ
Nginxは高速化だけではありません。Webサーバー以外への応用事例として、ロードバランサー、HTTPS対応、WAFとしての利用を紹介します。 連載目次 Nginxの活用 「高速・軽量・高機能WebサーバーのNginx」連載の最終回にあたり、今回はNginxのWebサーバー以外の活用方法を紹介します。 NginxはWebサーバー以外にも、ロードバランサーやHTTPSサーバー、WAF(Webアプリケーションファイアウォール)、キャッシュサーバーとして利用することができます。そもそもNginxが開発されたのは、Apache HTTPDのロードバランシング機能に対するパフォーマンス不足からでした。そのためNginxのロードバランシング機能はパフォーマンスが高く、またさまざまな付加機能を持ち合わせています。 例えばHTTPSとロードバランサーを組み合わせHTTPSアクセラレーションを実現したり、W
テキスト編集にVimを利用しているのですが、とても奥が深い道具なので一人で使う分には気づかない機能が沢山あります。 日頃職場の先輩方から教わりとても効率的に出来るようになったVimのtipsを、いくつかこの記事にまとめます。 知ってる人は既に使いこなしているものばかりだと思いますが、Vimのそんな便利だけど気付きにくい機能を共有できればと思います。 カーソルの位置を移動する直前に戻す うっかりggしてしまい作業場所を見失ってしまった、という時や検索などによってカーソル位置を変更した時に元の位置に戻りたい、ということはよくあります。 こういった移動履歴はジャンプリストと呼ばれる場所に記録されているので1手で戻る事ができます。 これはバッファ内だけでなく、ファイル間の移動を記録しているため、タグジャンプなどで別のファイルに移動した後も元いた場所に戻ることが出来ます。 参考help: :h CT
今回は、Linux上でネットワークトラフィックの監視を行えるモニタリングコマンドについて、数あるコマンドから20個を紹介する。 1.iftop 以前にこちらでも書いているiftopは、個別のソケットで受信・送信パケットをひと目で見る事が出来るコマンド。 通信ごとに個別のプロセスを表示させることは出来ないが、どのホストとの接続がどの程度の帯域を使用しているのかはひと目で分かるだろう。 以下のコマンドでインストールが出来る。 sudo apt-get install iftop # Debian/Ubuntuの場合 sudo yum install iftop # RHEL系の場合 2.bmon 『bmon』は、グラフでトラフィックの負荷を表示してくれるモニタリングコマンドだ。 どのNICのトラフィックを表示させるかを上下キー、モニタリングを行うパケットの種類を左右キーで選択する。 このコマン
Easy to install Simply run the binary for your platform. Or ship Gogs with Docker or Vagrant, or get it packaged. Cross-platform Gogs runs anywhere Go can compile for: Windows, Mac, Linux, ARM, etc. Lightweight Gogs has low minimal requirements and can run on an inexpensive Raspberry Pi. Some users even run Gogs instances on their NAS devices.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く