
この記事では、ホスティングの選択方法を共有したいと思います。 私たちの経験が初心者のスタートアップが多くの問題を回避し、すぐに製品自体に集中するのに役立つことを願っています。 次に、既存のWorkzillaサーバーとそれらのコストについて簡単に説明します。
ほとんどの場合、当社の技術専門家はすべてシステム管理者ではなく純粋なソフトウェア開発者であり、したがって、サーバークラスターの作成とその管理に関連する多くの点であまり専門的ではないことに注意してください。
初めての体験
サービスがまだアイデア段階にあり、Workzillaの最初のプロトタイプを作成したとき、ホスティングの問題を非常に簡単に解決しました。 Worksillaの最初のバージョンは私の場所でホストされていました。
当時、私たちには友人以外のユーザーはいませんでした。このソリューションの信頼性に疑問はありませんでした。 当然、最初のパブリックリリースの前に、もっと深刻なものを選択する必要がありました。 私たちはホスティング会社agava.ruに出会いました。これは価格の期待を満たしていました。 事実、私たちはプロバイダーの選択にかなりの時間を費やし、後で非常に後悔しました。
テクニカルサポートはゆっくりと機能し、警告なしなど、絶え間ない誤動作がありました(うらやましい一貫性があり、私たちからはお金だけが必要でした)。 鉄のアップグレードは、数日前に事前に注文する必要がありました。
正義のために、私はそれがずっと前であったことに注意し、私は物事が今そこに同じであると言うことを想定していませんが、私たちは私たちの教訓を学びました。
その後、すべてのサーバーをAmazon EC2 Cloudでホストすることにしました。 プラットフォームへの移行の2日後に彼らが倒れたという事実にもかかわらず、私たちは彼らを信頼し続け、正当化されました。
なぜクラウドなのか?
いくつかの理由を説明しますが、クラウドでのホスティングがはるかに便利である理由からはほど遠いです。
1.新しいサーバーを非常に迅速かつ簡単に作成できます。 さらに、完全に空のサーバーを作成することも、すべての設定を使用して既存のサーバーを複製することもできます。 具体的には、それは私たちに膨大な時間を節約しました。
2.各サーバーのネットワークポートへのアクセスを設定すると便利です。 数回クリックするだけで、サーバーまたはサーバーのグループのネットワークポートへのアクセスを制限または許可できます。
3.ディスクは、不要なコピーなしで、サーバーからサーバーにすばやく転送できます。
4.サーバーまたはディスク全体を3回クリックするだけでバックアップできます。
5.透明で明確な集中請求。
そのような理由は他にもたくさんありますが、すでにリストしたものよりも十分なものがありました。
アマゾンを選ぶ理由

ここで決定的な役割を果たしたのは、価格、EC2とともに利用可能な他の多くのサービス、新しいサービスの開発と既存のサービスの改善の印象的なスピードです。 クラウドの人気の高まりが重要な役割を果たしました(会社を売却する可能性を排除しない場合、これは重要です)。
Workzillaサーバー
すべてのサーバーはアイルランドで稼働しています。 ヨーロッパとのPingは、アメリカやアジアよりも優れていると予想されました。 これらの地域のサーバーは現在利用可能です。
すべてのサーバーは、目的に応じていくつかのグループに分けることができます。
1.補助サーバー
このグループの最初のサーバーはVPNサーバーであり、システム全体を監視するためのノードです。 NagiosとMuninを使用します。 インスタンスタイプt1.microは月額わずか15 USDです。 興味があれば、設定方法に関する詳細な記事を書くことができます。
2番目のサーバーはSVNリポジトリです。 また、ドキュメント管理システムとプロジェクト管理システムもホストしています(これについては後で説明します)。 インスタンスタイプt1.microは月額わずか15 USDです。
2.開発用サーバー
現在、開発者が使用するサーバーは1つだけです。このサーバーは、ライブサーバーよりもはるかに脆弱で、実際のシステムのすべてのコンポーネントがインストールされています。 ここで、すべての適合テストとプレリリーステストが行われます。 種類
インスタンス-1か月あたり85 USDのm1.small。
3.生産
ウェブサーバー。 現時点では、Amazonianロードバランサーを介して接続された1台のサーバーのみを使用して、負荷の高い日に容量を簡単に追加します。 通常、深刻なプロモーションがない場合、またはhabrahabrメインページにいない場合は、1台のサーバーで十分です。
インスタンスタイプc1.medium。
DBサーバー。 MS SQL Serverにデータベースがあります。 ライセンスは比較的高価ですが、組み込みのSQL Serverメカニズムは、SQLクエリなどを最適化するために多くの頭痛の種になります。
インスタンスタイプm1.large。
ファイルサーバー。 ユーザーがアップロードしたすべてのファイルはここに保存されます。 インスタンスタイプm1.small。
合計すると、毎月の請求額は約1000 USDであり、そのほとんどはSQL Serverを使用するためのライセンスで占められています。
したがって、これらのサーバーは、1日あたり最大3,000人のオンラインユーザーと25,000人の訪問に耐えることができます。 おそらくこれはそれほどではないかもしれませんが、Worksillaは単なる発表サイトではなく、誰もが見慣れた形での普通のフリーランスではありません。 私たちのビジネスロジックは非常に複雑です。 私たちは常に、特定の割り当てに最適な候補のみを顧客に提供しようとしています(既に使用されているアルゴリズムと紹介するアルゴリズムの概要については、以下の記事で説明します)。
その他のAWSサービス
現在、システムの負荷に応じてサーバーが自動的に追加および削除されるように、自動スケーリングシステムの構築に取り組んでいます。 Amazonはこれも非常に簡単にします。
EC2に加えて、他の多くのAmazonサービスを使用しています。 それらはすべて互いに非常によく統合されています。 特に、データベースのバックアップを保存するためにS3を使用し、電子メールを送信するためにSESを使用し、サーバーを監視するためにクラウドウォッチを使用します。 これにいくつかの個別の記事を捧げます。
一般に、一般的なクラウドを使用してソリューションをホストすることをお勧めします。 私たちの場合のAmazonは最も望ましいように見えました。
PS
私たちの目標は、プロジェクトに取り組んでいる若いチームに問題と解決策を伝えることです。 レトリック(特に建設的な)を聞いてうれしいです。 次の記事のトピックに関するご意見-Wellcomeへ。
将来の非技術記事のサンプルリスト:
-最初の従業員の検索
-最初のバージョンの発売
-最初のユーザーを検索
-どんな困難に遭遇しましたか
-リモートチームワーク
将来の技術記事のサンプルリスト:
-JMeterによる大規模な広告キャンペーンの準備
-DR-不可抗力の問題をどのように解決するか。
-バックアップの詳細
-Munin、Nagiosなどを使用した監視サービス
-信頼できるSMTPサーバーを選択する問題