3

Windows azure で Java tcp サーバーを実行する方法は? ウィンドウ紺碧はそれを行うことができますか?

Windows Azure用のJavaアプリケーションに関する非常に多くの記事を見つけました.EclipseでJSP Webプロジェクトを開き、ワーカーロールを使用してWindows Azureで公開していますが、私のtcpサーバーは一般的なJavaプロジェクトなので、ウィンドウに公開する方法紺碧?

私のTCPサーバー:

public class test {

    private static int serverport = 12345;
    private static ServerSocket serverSocket;

    public static void main(String[] args) {
        try {
            serverSocket = new ServerSocket(serverport);
            System.out.println("Server is start.");
            while (!serverSocket.isClosed()) {
                System.out.println("Wait new clinet connect!");
                waitNewPlayer();
            }
        } catch (IOException e) {
            System.out.println("Server Socket ERROR");
        }
    }


    public static void waitNewPlayer() {
        try {
            Socket socket = serverSocket.accept();  
            System.out.println(socket.getInetAddress().getHostAddress()+"'s socket is connected now!"); 
            createNewUser(socket);
        } catch (IOException e) {
        }
    }


    public static void createNewUser(final Socket socket) {

        Thread t = new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    PrintWriter out = new PrintWriter( new BufferedWriter( new OutputStreamWriter(socket.getOutputStream())),true); 

                    out.println("nangnang");
                } catch (IOException e) {
                    System.out.println("Socket is closed!");
                }   
                System.out.println("This socket is removed form the player array!");
            }
        });
        t.start();
    }
}
4

2 に答える 2

0

また、Azure Java Project もサポートする AzureRunMe を試すこともできます。http://azurerunme.codeplex.com/

于 2013-02-13T20:50:52.573 に答える
0

Azure でこのようなアプリを実行できるはずですが、いくつかのことに注意する必要があります。

  • ワーカー ロールの入力エンドポイントを開きます。これにより、外部へのポートが開きます。次に、それを内部でまったく同じポートにマップするか、Azure にポートを選択させる必要があります (その後、割り当てられたポートをロール環境に問い合わせて、コードで 12345 の代わりにそのポートを開くことができます)。
  • すべての についてprintln、それらを表示するにはリモート デスクトップにするか、Cerebrata の Diagnostics Manager などの外部ツールを介してこれらのデバッグ ステートメントを表示できるように診断ログにプッシュする必要があります。

公開に関しては、これまで見てきた jsp の例と同じです。Java プロジェクトに合わせて Azure プロジェクトを構築し、ロール サイズとインスタンス数を設定し、入力エンドポイントを作成し、必要に応じてキャッシュを作成し、設定します。ストレージ アカウントの構成設定、エミュレーターまたはクラウドで実行するパッケージの作成など。

于 2012-12-24T15:32:08.443 に答える