PHP を放棄する代償は高すぎる、PHP を放棄する代償_PHP チュートリアル
PHPを放棄する代償は高すぎる、PHPを放棄する代償
はじめに
私が初めてプログラミングに挑戦したときに使用した言語は php で、主な開発言語として php を使用するいくつかの会社で働いてきました。ただし、他の言語にも目をつぶるつもりはありません。現在では、php は私の主な開発言語ではなくなりました。
私は「言語設計をあまり気にしなくていい」「手っ取り早くお金を稼いで、できるだけ楽に仕事を終わらせられる」ので幸せになれる人間だと思っています。私は最近、フロントエンド開発者として主に PHP に取り組んでいたフルタイムの仕事を辞めました。
最近、私はブログ投稿「Eevee.PHP: The Debris of Bad Design」を読みました。これは古いものですが、依然として本当に痛みを呼び起こすもので、もう無視できません。しかし、いくつかの障害にぶつかり、これは php を使わなくなってから苦労した私の話です。
自由時間プロジェクトに取り組む際の経済的問題
私は自由です。必要がなければ php コードを 1 行も記述する必要はありません。また、致命的な変更によってブラウザがクラッシュしない限り、バックエンドの開発作業を行う必要はありません。近い将来、仕事をする。
しかし、私には構築して実現させたいプロジェクトがたくさんあり、プロジェクトは複数あります。私は実際に、小さなウェブサイトをたくさん構築して、満足のいく受動的収入(非課税収入)を得ようとしています。 (とにかくそれが私の目標です) これを行うために、私は昨日、最初の名前のない Web サイトを立ち上げました。
残念ながら、これは自己資金によるプロジェクトであり、多くのサイトを構築する必要があるため、いくつかのことを直接諦めなければなりません。以下にそれらを列挙し、ホスティングプロバイダーが私にとって機能しないと考える理由を説明し、私と同じ苦境にある他の人について話します。
ヒーローク
お金があったら、すべてのアプリケーションを Heroku に置くのに。私の経験では、Heraku は信じられないほど素晴らしかったです。独自の環境のホスティングと構成は簡単で、使用する言語なども関係ありません。
Heroku を使用する際の問題は、その課金モデルです。プロジェクトあたり月額 7 ドルはそれほど高くないと思われますが、プロジェクトが多数ある場合、コストがロケットのように上昇します。たとえたった 10 個のアプリを使用したとしても、結果につながらない可能性のあるものに月額 70 ドルは高すぎます。
上記のコストにはデータベースの使用も考慮されておらず、データ 1,000 万行あたり追加で 9 ドルかかります。プロジェクトに大量のデータ トラフィックがある場合、アプリケーションのコストも増加し、すぐに月額コストが 100 ドルを超えることになります。
アマゾン ウェブ サービス
AWS の料金は安いように思えますが、AWS を使用するとさまざまな面で複雑さが増し、構成やコストも増加し、月に数百回しかアクセスしない小規模な Web サイトとしてはかなり高価になります。価値。
AWS の使用経験が豊富とは言えませんが、AWS のすべてがエンタープライズ向けの要素が強く、複雑なアプリケーションを持つ顧客が焦点となっていると思います。
おそらく、AWS に効率的にデプロイする方法を学ぶ価値はありますが、Git サービスを簡単にデプロイする方法はありますか?追加のサービスが必要ですか?同じインスタンスで複数のアプリケーションを実行できますか?充電モデルはどのようなものですか?料金ページを見ても、どの部分が自分に関係しているのかまだわかりません。彼らのウェブサイトを読んだ後でも、答えが見つからない多くの疑問が頭の中に残ります。
Microsoft Azure
一見すると、Microsoft の Azure が救世主のように見えます。ただし、大規模なアプリケーションをここにデプロイしたいと考えていますが、まだ懸念事項が 1 つあります。それは、Google と HTTPS に関するものです。
価格モデルを見れば理解できるはずです(写真は私のホームページから引用しています。スウェーデン語が含まれていて申し訳ありません〜)。これらを探すのが最も賢明です。 Standard Edition を選択すると、最大 50 個のアプリケーションを展開できると聞いています。私の場合、ほぼ標準バージョンを選択する必要があります。月額580クローナ、約70米ドルに相当します。まだ少し高価ではありますが、私が Heroku で気に入っている機能がここでも利用できるので、十分価値があります。もちろん、Azure はもう少し複雑で、価格変動も頻繁にありますが、その欠点はそれを上回るものではありません。
問題は、価格モデルで説明されている標準バージョンが 5 SNI (Server Name Indication) しかサポートしていないことです。それはどういう意味ですか?私の理解では、SSL をサポートしているサイトは 5 つだけです。 Google は SSL をサポートしていないサイトに対してますます不親切になってきており、Let's Encrypt プロジェクトによってすべての Web サイトで HTTPS 暗号化が使用できるようになったという事実を考慮すると、私の 50 サイトのうち 5 つだけが SSL をサポートしており、これは本当に良くありません。上記はあくまで私の個人的な理解であり、説明も曖昧なので誤解している可能性があります。実際、私が間違っていることを願っています。もしそうなら、記事の下のコメントボックスに返信してください。
GleSYS、Digital Ocean、Linode自社サーバー等
このお金を使って上記のサービスプロバイダーのいずれかから VPS をレンタルすることが唯一の現実的な代替手段です。 GleSYS の良い点は、スウェーデンのホストを利用できることです。これは、遅延が短く、データが米国政府の監視を通過するリスクがないことを意味します。ユーザーデータをそこに安全に保存できます。
ホスティングサービスに比べて料金は圧倒的に安いですが、設定や整理などを自分で行う必要があり、手間がかかります。私がホスティング サービスを選択する最大の理由は、仕事中にサービスの 1 つがダウンした場合、その対応に仕事から帰宅するまで待たなければならず、7 ~ 8 時間かかる場合があるからです。それは将来の問題です。
PHP コミュニティがソリューションを提供します
Eevee が PHP 言語の独自機能の欠如について不満を漏らしていた一方で、コミュニティは私がこれまで試した中で最もクールなホスティング ソリューションを考え出しました。これは私が今まで試した中で最も安いものでもあります。
その解決策はLaravel Forgeです。
このリンクにすぐにアクセスできない場合は、説明させていただきます。 Laravel Forge は月額 9 ドルで、実稼働グレードの PHP サーバー (インストール、セットアップ、構成) を無制限に提供し、単一の Web インターフェイスからすべてのサービスを制御できます。さらに驚くべきことに、最も単純な AWS や Digital Ocean など、あらゆる VPS プロバイダーをターゲットにできることです。これは、サーバーのスケール、cron ジョブのセットアップ、環境構成の編集、git Push を使用したデプロイなどに役立ちます。
Laravel Forge サービスは、Azure または HeroHu を使用してアプリケーションを無制限に使用できるという優れた機能を提供します (VPS が処理できる限り)。 Laravel Forge は Laravel フレームワークに限定されず、どの PHP アプリケーションでも使用できます。
Eevee のように、この記事が PHP コミュニティに対するあなたの認識を改善しないのであれば、何も改善されません。しかし真面目な話、これを知っている人がどうしてこれほど素晴らしいサービスを辞めることができるのでしょうか?
利益は重要です
私の話は非常に一般的だと思います。私は一人ではないと思います。アプリケーションをホストする必要がある中小企業の経営者は世界中に何千人もいるはずです。彼らのプロジェクトは偶然にもウェブサイトでした。
Linode の 10 ドルのサーバーと 9 ドルの Laravel Forge は、導入が速く、安価です。サーバーの起動や実行などの運用とメンテナンスの作業は不要です。証明書とその他の作業。
ウェブで答えを探しましたが、唯一説得力のある代替案は、Codeship のような継続的インテグレーション サービスを使用することでした。無制限ではなく、プロジェクトが 5 つを超えると料金は 49 ドルに跳ね上がりますが (これが私のプランです)、正直言ってかなり良い仕事をしてくれます。さらに、Codeship は自動テストと git Push デプロイメント サービスも提供しますが、サーバーは提供しないため、Web サイトのサーバーとデータベースを自分で準備して構成する必要があります。
他の言語については、Laravel Forge にもっと良い代替手段があるかもしれませんし、ないかもしれません。しかし、私や他の多くの人にとって、PHP を放棄する代償は高すぎると今でも思っています。たとえ余裕があったとしてもあまり意味がありません。
最後に、もう一度イーブイの言葉を引用します:
PHP が非常に人気があることに疑いの余地はありません。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









MySQLデータベースでは、ユーザーとデータベースの関係は、アクセス許可と表によって定義されます。ユーザーには、データベースにアクセスするためのユーザー名とパスワードがあります。許可は助成金コマンドを通じて付与され、テーブルはCreate Tableコマンドによって作成されます。ユーザーとデータベースの関係を確立するには、データベースを作成し、ユーザーを作成してから許可を付与する必要があります。

データ統合の簡素化:AmazonrdsmysqlとRedshiftのゼロETL統合効率的なデータ統合は、データ駆動型組織の中心にあります。従来のETL(抽出、変換、負荷)プロセスは、特にデータベース(AmazonrdsmysQlなど)をデータウェアハウス(Redshiftなど)と統合する場合、複雑で時間がかかります。ただし、AWSは、この状況を完全に変えたゼロETL統合ソリューションを提供し、RDSMYSQLからRedshiftへのデータ移行のための簡略化されたほぼリアルタイムソリューションを提供します。この記事では、RDSMysQl Zero ETLのRedshiftとの統合に飛び込み、それがどのように機能するか、それがデータエンジニアと開発者にもたらす利点を説明します。

MySQLのユーザー名とパスワードを入力するには:1。ユーザー名とパスワードを決定します。 2。データベースに接続します。 3.ユーザー名とパスワードを使用して、クエリとコマンドを実行します。

1.正しいインデックスを使用して、データの量を削減してデータ検索をスピードアップしました。テーブルの列を複数回検索する場合は、その列のインデックスを作成します。あなたまたはあなたのアプリが基準に従って複数の列からのデータが必要な場合、複合インデックス2を作成します2。選択した列のみを避けます。必要な列のすべてを選択すると、より多くのサーバーメモリを使用する場合にのみサーバーが遅くなり、たとえばテーブルにはcreated_atやupdated_atやupdated_atなどの列が含まれます。

MySQLデータベースパフォーマンス最適化ガイドリソース集約型アプリケーションでは、MySQLデータベースが重要な役割を果たし、大規模なトランザクションの管理を担当しています。ただし、アプリケーションのスケールが拡大すると、データベースパフォーマンスのボトルネックが制約になることがよくあります。この記事では、一連の効果的なMySQLパフォーマンス最適化戦略を検討して、アプリケーションが高負荷の下で効率的で応答性の高いままであることを保証します。実際のケースを組み合わせて、インデックス作成、クエリ最適化、データベース設計、キャッシュなどの詳細な主要なテクノロジーを説明します。 1.データベースアーキテクチャの設計と最適化されたデータベースアーキテクチャは、MySQLパフォーマンスの最適化の基礎です。いくつかのコア原則は次のとおりです。適切なデータ型を選択し、ニーズを満たす最小のデータ型を選択すると、ストレージスペースを節約するだけでなく、データ処理速度を向上させることもできます。

MySQLのコピーと貼り付けには、次の手順が含まれています。データを選択し、Ctrl C(Windows)またはCMD C(MAC)でコピーします。ターゲットの場所を右クリックして、貼り付けまたはCTRL V(Windows)またはCMD V(MAC)を使用します。コピーされたデータは、ターゲットの場所に挿入されるか、既存のデータを置き換えます(データが既にターゲットの場所に存在するかどうかに応じて)。

データベース酸属性の詳細な説明酸属性は、データベーストランザクションの信頼性と一貫性を確保するための一連のルールです。データベースシステムがトランザクションを処理する方法を定義し、システムのクラッシュ、停電、または複数のユーザーの同時アクセスの場合でも、データの整合性と精度を確保します。酸属性の概要原子性:トランザクションは不可分な単位と見なされます。どの部分も失敗し、トランザクション全体がロールバックされ、データベースは変更を保持しません。たとえば、銀行の譲渡が1つのアカウントから控除されているが別のアカウントに増加しない場合、操作全体が取り消されます。 TRANSACTION; updateaccountssetbalance = balance-100wh

次のコマンドでmysqlデータベースを表示します。サーバーに接続します:mysql -u username -pパスワードrun showデータベース。すべての既存のデータベースを取得するコマンド[データベース]を選択します。データベース名を使用します。テーブルを表示:表を表示します。テーブル構造を表示:テーブル名を説明してください。データを表示:[テーブル名]から[ *]を選択します。
