ホームページ バックエンド開発 PHPチュートリアル WeChat パブリック アカウントでのデータの受信と LAN Web サイトへの送信に関するいくつかの問題

WeChat パブリック アカウントでのデータの受信と LAN Web サイトへの送信に関するいくつかの問題

Aug 18, 2016 am 09:16 AM
mysql php python WeChatの公開アカウント

私はアイデアを見つけて専門家の意見を聞きたいだけです。詳細な計画を立てるのに他の人に協力を求めるのではなく、研究の方向性を示したいだけです。私は PHP/Java を知っており、Baidu と比べて Python を少し書くことができます。
ローカル LAN には、php Web サイトを実行するサーバーがあります。このサーバーはディープ イントラネットにあります (動的パブリック IP + ネットワーク管理はポート転送を行いません)。xx クラウドのコンピューター ルームに別のサーバーがあります。独立したパブリック IP、php を実行して WeChat に接続します。今回はWeChatから送信された情報をxxクラウドホスト経由でLAN内のサーバーに転送できる機能を作りたいと思います。 xx クラウド ホストは、PHP/Python/Java を実行できる Linux オペレーティング システムです。LAN ホストは、PHP/Python/Java を実行できる Windows オペレーティング システムを搭載した通常の PC です。どちらのホストにも MySQL が搭載されています。データベース (この質問も選択されたデータベース) 何かもっと微妙なアイデアがあるでしょうか。 。
現在、予備的なアイデアがいくつかありますので、コメントをお願いします。ありがとうございます。
1. WeChat -> クラウド ホスト (PHP) -> データベース
ローカル エリア ネットワークは、Python または Java を使用してポーリングし、ローカル データベースに新しいデータを取得します。
2. WeChat -> クラウドホスト(PHP) -> Pythonで書かれたソケットサーバーへのクロスプロセス送信
ローカルエリアネットワークはPythonまたはJavaを使用してクラウドホストとのソケットリンクを確立し、リアルタイム通信を行います。データベースに保存されます。
3. WeChat -> クラウド ホスト (PHP) -> データベース。
マスター/スレーブ データベースを同期するためにローカル データベースとリモート データベースが作成されます (重要なのは、リモートはチェックせずに書き込みのみできるということです)。 >クラウド ホスト (PHP) ->データベース
2 つのデータベースを直接接続していくつかの操作を実行するプログラムをローカルに作成します。 。
上記は、この問題について私が考えた結果の一部であり、それぞれの方法がシステム全体の速度と効率に影響を与えると感じています。

返信内容:

私はアイデアを見つけて専門家の意見を聞きたいだけです。詳細な計画を立てるのに他の人に協力を求めるのではなく、研究の方向性を示したいだけです。私は PHP/Java を知っており、Baidu と比べて Python を少し書くことができます。

ローカル LAN には、php Web サイトを実行するサーバーがあります。このサーバーはディープ イントラネットにあります (動的パブリック IP + ネットワーク管理はポート転送を行いません)。xx クラウドのコンピューター ルームに別のサーバーがあります。独立したパブリック IP、php を実行して WeChat に接続します。今回はWeChatから送信された情報をxxクラウドホスト経由でLAN内のサーバーに転送できる機能を作りたいと思います。 xx クラウド ホストは、PHP/Python/Java を実行できる Linux オペレーティング システムです。LAN ホストは、PHP/Python/Java を実行できる Windows オペレーティング システムを搭載した通常の PC です。どちらのホストにも MySQL が搭載されています。データベース (この質問も選択されたデータベース) 何かもっと微妙なアイデアがあるでしょうか。 。
現在、予備的なアイデアがいくつかありますので、コメントをお願いします。ありがとうございます。
1. WeChat -> クラウド ホスト (PHP) -> データベース
ローカル エリア ネットワークは、Python または Java を使用してポーリングし、ローカル データベースに新しいデータを取得します。
2. WeChat -> クラウドホスト(PHP) -> Pythonで書かれたソケットサーバーへのクロスプロセス送信
ローカルエリアネットワークはPythonまたはJavaを使用してクラウドホストとのソケットリンクを確立し、リアルタイム通信を行います。データベースに保存されます。
3. WeChat -> クラウド ホスト (PHP) -> データベース。
マスター/スレーブ データベースを同期するためにローカル データベースとリモート データベースが作成されます (重要なのは、リモートはチェックせずに書き込みのみできるということです)。 >クラウド ホスト (PHP) ->データベース
2 つのデータベースを直接接続していくつかの操作を実行するプログラムをローカルに作成します。 。
上記は、この問題について私が考えた結果の一部であり、それぞれの方法がシステム全体の速度と効率に影響を与えると感じています。

redisのサブスクリプション・公開機能を利用でき、即時メッセージ配信可能

2番目のアイデアに厚みを加えさせてください

WeChat -> クラウド ホスト (PHP) -> RabbitMQ メッセージ キュー サーバーを起動し、WeChat メッセージをキューにスロー -> LAN ホストが RabbitMQ クライアントを起動し、サーバーからメッセージを取得 -> データベースにスロー

メッセージ送信プロセス全体は非同期で実行され、リンクがブロックされることはなく、適切に実行されるため、車輪を再発明する必要はありません

自分自身に与えた 1、2、3、4 のように、多くのオプションがあります。現時点では、それはビジネス シナリオによって異なります。

時間に追われていますか?
  1. データ量は大きいですか?
  2. レイテンシ要件は高いですか?
  3. 同時実行性はどうですか?
  4. ハードウェアとソフトウェアの投資に制限はありますか?
  5. ピーナッツの殻は使えませんか

これら 4 つの解決策はすべて理論的には実現可能です。ただし、実際のシナリオでは次の点に注意してください:
1. すべてのソリューションは書き込み操作です。読み取り操作がある場合、一部のソリューションは処理が困難になります。非同期ポーリングに依存すると、確実にデータの不整合が発生します。 2. 通信のために長時間接続を維持した場合、短期間にデータが存在しない場合、ファイアウォールがリンクをクリックしてオフにしてしまいますか?これは、
ネットワーク管理がポート転送を提供しないという恐ろしい前提の下では、特に非常に難しく、非常に一般的な大きな問題です。 3. オプション 4 について、ネットワークの遅延により、ユーザーの操作にゾンビやダーティデータが発生しますか?

中国のネットワーク品質は非常に悪いため、複数のリモートサーバーが直線的な操作を処理することを避け、長時間のリモート接続を避けるようにしてください。

通常、ローカル エリア ネットワークに WeChat サーバーを設定する場合、ポート転送が使用されます (動的 IP の場合は、動的ドメイン名を構成する必要があります)。 PHP サーバーは基本的にビジネスを処理せず、プロキシとして機能するだけです。1. パブリック サーバー上に nginx を構築し、動的ドメイン名テクノロジを使用して LAN サーバーに接続します。2. サービスを使用します。 JavaのdubboなどのMiddle Priceは、外部ネットワークサーバーからローカルエリアネットワーク内のサービスをリモートで呼び出すことができます

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Amazon AthenaでAWS接着クローラーの使用方法 Amazon AthenaでAWS接着クローラーの使用方法 Apr 09, 2025 pm 03:09 PM

データの専門家として、さまざまなソースから大量のデータを処理する必要があります。これは、データ管理と分析に課題をもたらす可能性があります。幸いなことに、AWS GlueとAmazon Athenaの2つのAWSサービスが役立ちます。

MySQL:簡単な学習のためのシンプルな概念 MySQL:簡単な学習のためのシンプルな概念 Apr 10, 2025 am 09:29 AM

MySQLは、オープンソースのリレーショナルデータベース管理システムです。 1)データベースとテーブルの作成:createdatabaseおよびcreateTableコマンドを使用します。 2)基本操作:挿入、更新、削除、選択。 3)高度な操作:参加、サブクエリ、トランザクション処理。 4)デバッグスキル:構文、データ型、およびアクセス許可を確認します。 5)最適化の提案:インデックスを使用し、選択*を避け、トランザクションを使用します。

SQLデータベースの構築方法 SQLデータベースの構築方法 Apr 09, 2025 pm 04:24 PM

SQLデータベースの構築には、DBMSの選択が必要です。 DBMSのインストール。データベースの作成。テーブルの作成;データの挿入;データの取得。データの更新。データの削除。ユーザーの管理。データベースのバックアップ。

PHP対Python:違いを理解します PHP対Python:違いを理解します Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHPの未来:適応と革新 PHPの未来:適応と革新 Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

SQLファイルをデータベースにインポートする方法 SQLファイルをデータベースにインポートする方法 Apr 09, 2025 pm 04:27 PM

SQLファイルをインポートすると、テキストファイルからSQLステートメントをデータベースにロードできます。手順には、データベースへの接続が含まれます。 SQLファイルを準備して、それが有効であることを確認し、ステートメントがセミコロンで終了します。コマンドラインまたはデータベースクライアントツールを介してファイルをインポートします。データベース検証のインポート結果をクエリします。

MySQLおよびSQL:開発者にとって不可欠なスキル MySQLおよびSQL:開発者にとって不可欠なスキル Apr 10, 2025 am 09:30 AM

MySQLとSQLは、開発者にとって不可欠なスキルです。 1.MYSQLはオープンソースのリレーショナルデータベース管理システムであり、SQLはデータベースの管理と操作に使用される標準言語です。 2.MYSQLは、効率的なデータストレージと検索機能を介して複数のストレージエンジンをサポートし、SQLは簡単なステートメントを通じて複雑なデータ操作を完了します。 3.使用の例には、条件によるフィルタリングやソートなどの基本的なクエリと高度なクエリが含まれます。 4.一般的なエラーには、SQLステートメントをチェックして説明コマンドを使用することで最適化できる構文エラーとパフォーマンスの問題が含まれます。 5.パフォーマンス最適化手法には、インデックスの使用、フルテーブルスキャンの回避、参加操作の最適化、コードの読み取り可能性の向上が含まれます。

PHP:それは死にかけていますか、それとも単に適応していますか? PHP:それは死にかけていますか、それとも単に適応していますか? Apr 11, 2025 am 12:13 AM

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

See all articles