In this blogpost we’ll talk about the old Nginx-based traffic infrastructure, its pain points, and the benefits we gained by migrating to Envoy. We’ll compare Nginx to Envoy across many software engineering and operational dimensions. We’ll also briefly touch on the migration process, its current state, and some of the problems encountered on the way. When we moved most of Dropbox traffic to Envoy
Editor – This seven‑part series of articles is now complete: Introduction to Microservices Building Microservices: Using an API Gateway Building Microservices: Inter-Process Communication in a Microservices Architecture Service Discovery in a Microservices Architecture Event‑Driven Data Management for Microservices (this article) Choosing a Microservices Deployment Strategy Refactoring a Monolith
全国の nginx 職人のみなさま、こんにちは。野島(@nojima)です。 私の所属するYakumoプロジェクトでは、nginx を Go と Docker によってユニットテスト1しています。 手元で簡単に実行でき、ブランチへのpushのたびにCIでテストされるので、非常に便利です。 この記事では、このnginxのユニットテストについて紹介してみたいと思います。 背景 nginx は極めて柔軟なロードバランサであり、プロダクション環境ではその柔軟さを生かして多彩な役割を担っています。 我々の nginx は、ユーザーからのリクエストを AP サーバーに振り分け、アクセス制限を行い、リクエストをリダイレクトし、HTTPヘッダを付与したり削ったりしています。 しかし、nginx は便利な反面、その設定は極めて複雑になり、読解したり変更したりするのが難しくなっています。 そこで、nginx
I want to configure the server to show a maintenance page when it exist. I tried this code and works: location / { try_files /maintenance.html $uri $uri/ @codeigniter; } But I noticed it would be served with a 200 status code, and it can cause confusion to search engines. I think the best practice would be returning a 503 status code. On google I find several relevant pages about it, like this. Ho
Enable/disable a proper maintenance page for your site with a single command If you’re reading this, you’ve probably been through a journey which doesn’t end as well as you thought. You thought it ended with the protagonist as the happy sysadmin or developer who painstakingly setup a web server and then lived happily ever after. Except that that happily ever after lasted all of a few weeks (months
Elastic Cloud で Kibana を運用しています。Elastic Cloud では、X-Pack が使用できるので、付属の Shield を使って Kibana のログインを管理できます。ただ、これでまた個人で管理するアカウントが増えてしまうんですよね。昨今色々なサービスを利用することが多いので、個人のアカウントだけでもかなりの数を管理しているかと思います。アカウントを1つ作成して共有するにしても、アカウントが増えることには変わりありません。。 できれば、個人で管理するアカウント増やしたくない! ということで、今回紹介するのは、会社の Google アカウントで Kibana にログインする方法について紹介したいと思います。 (正しくはGoogle アカウントで許可されたユーザーだけ Kibana へアクセスする方法です。) システム構成 ユーザーの認証を担うシステムは、Go
Pascal〜Puree + ngx_lua + Fluentd + BigQueryでつくるメルカリのログ分析基盤〜 Backend Author: cubicdaiya エンジニアではなくプログラマと呼ばれたい@cubicdaiyaです。今回はメルカリのログ分析基盤のお話です。 メルカリにおけるログデータ分析 メルカリでは初期の頃からログデータの分析をサービスの成長にとって重要なタスクとして位置づけ、そのための基盤作りに取り組んできました。ログの種類はいくつかありますが、中でも代表的なのがアプリケーションサーバで出力されるアクセスログやアプリケーション固有のログです。これらのログはサイズが大きいので効率良くログデータを転送するための工夫が必要になります。そこで活躍するのがFluentdです。 大雑把に説明するとアプリケーションサーバで出力されたログはFluentdから最終的にBigQu
Adventures in deep learning, cheap hardware, and object recognition. Object recognition is one of the most exciting areas in machine learning right now. Computers have been able to recognize objects like faces or cats reliably for quite a while, but recognizing arbitrary objects within a larger image has been the Holy Grail of artificial intelligence. Maybe the real surprise is that human brains r
TutorialUnderstanding the Nginx Configuration File Structure and Configuration Contexts Introduction Nginx is a high performance web server that is responsible for handling the load of some of the largest sites on the internet. It is especially good at handling many concurrent connections and excels at forwarding or serving static content. In this guide, we will focus on discussing the structure o
nginx (openresty) で Basic 認証に LDAP を使うためには nginx-auth-ldap を追加で組み込む必要があります。 clone した directory を configure の --add-module で指定して build します。 curl -O http://openresty.org/download/ngx_openresty-1.4.3.9.tar.gz tar xvf ngx_openresty-1.4.3.9.tar.gz git clone https://github.com/kvspb/nginx-auth-ldap.git cd ngx_openresty-1.4.3.9 ./configure \ --prefix=/some/where/openresty-1.4.3.9 \ --with-luajit \ ... \
Webアプリや共有フォルダなどの認証を必要とする場面が増えてくると、ユーザ管理のコストが無視できなくなります。Active DirectoryやLDAPでIDを統合すると、運用者はユーザ管理が楽になり、利用者はシングルサインオンで快適になります。たとえ自分しか使わない環境であっても、一括でパスワード変更できたり、簡単に認証を設定できるメリットは大きいでしょう。多くのアプリがLDAP認証に対応しています。 この記事ではnginxでLDAP認証を使う方法を説明します。.htpasswdによる認証とは異なり、IDとパスワードはWebサーバでは管理しません。LDAPサーバのリポジトリで管理します。 今回は以下のミドルウェアを使いました。 Amazon Linux 2011.9 OpenLDAP 2.4.23 nginx 1.0.12 nginx-auth-ldap LDAPを準備する OpenLD
こんにちは、サーバーサイドのエンジニアをやっているoinumeです。今回は昨年8月ぐらいから作っていたAmeba Owndというサービスで行ったSEO対策について紹介します。 AmebaOwndって?ブログ機能を備えたスタイリッシュなデザインのWebサイトを簡単に作成できるサービスです。 香川真司オフィシャルサイトスターバックス コーヒー オフィシャルブログなどのサイトがAmeba Owndを利用して作られています。 アーキテクチャユーザーさんがWebブラウザでアクセスするページについてはAngularJS + REST API(Nginx + Go)で作られています。一方でGooglebotなどのクローラーからのアクセスの場合は、受けたリクエストをNginxがPrerender CacheというシステムにProxyして、このPrerender CacheからHTMLを返すようにしています
こんにちは、@harukasanです。ピクシブでは3年以上にわたってHTTPサーバにnginxを採用しています。これらのノウハウが詰まった「nginx実践入門」が1/16(土)、技術評論社から発売されることになりました。 この記事では本書からピクシブで良く使われているnginxのテクニックについてかいつまんで紹介します。 すべてのリクエストを受け止めるnginx ピクシブのたくさんあるサービス(pixiv、pixiv Spotlight、pixivコミック、ピクシブ百科事典……)のどこかにHTTPリクエストを投げると、複数台あるフロントサーバのどれかに届きます。実際にアプリケーションを処理するのはフロントサーバの裏側にいるアプリケーションサーバです。これらのサーバにはPHPだったり、Ruby on RailsだったりPlay/Scalaだったりいろんなアプリケーションがデプロイされています
Status: Deprecated This article covers a version of CentOS that is no longer supported. If you are currently operating a server running CentOS 6, we highly recommend upgrading or migrating to a supported version of CentOS. Reason: CentOS 6 reached end of life (EOL) on November 30th, 2020 and no longer receives security patches or updates. For this reason, this guide is no longer maintained. See In
登場人物 ぼく 去年まで女子校だった私立高校に通う普通の高校生。人間が嫌い。これ以降登場しない。 Ubuntu Linuxらしいが、よく知らない。 pyenv Pythonのバージョンを切り替えるやつ。virtualenvとの連携で使い勝手が超いいらしいが、よく知らない。 Nginx Webサーバーらしいが、よく知らない。 uWSGI WSGIサーバーらしいが、何のことか分からない。そもそもWSGIを知らない。 Flask Webアプリケーションを気軽に作れる軽量のフレームワークらしいが、よく知らない。 pyenvの設定とPythonのインストール システムのPythonには指一本触れません。 更にpyenvでインストールしたPythonに対しても直接いじることはしません。 パッケージのインストールなどはすべてvirtualenvを使います。 また、普通はpyenvのディレクトリは$HOM
前提 Flaskアプリケーションのローカル環境での開発方法は知っていて、本番環境でのdeploymentの方法が知りたい。uWSGIやNginxについてはあまり知らない。 概略 Flaskの公式によると You can use the builtin server during development, but you should use a full deployment option for production applications. とのことなので、アプリを公開するには組み込みサーバーの利用はせずに、別の方法を考える必要があるらしい。様々な方法があるようだが、ここではuWSGIとNginxという組合せで進める。 まず、基本的な言葉の整理からおこなう。 uWSGI uWSGIは、WSGIと名前は似ているが異なる概念であることに注意する。 WSGI(Web Server Gate
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く