Rumah  >  Soal Jawab  >  teks badan

线程 - java 进程通信问题

现在有这样一个场景。

有一个jar在多线程运行,每个线程里都有自己的局部变量累加器 long count;

现在我需要通过一个spring的web project获取每个线程的count值,并且通过highcharts绘制出图形

请问这个独立jar的各自线程中的count局部变量,如何能被spring拿到?

自己想到的几个方法:

1.NIO的管道通信,PipedInputStream、PipedOutputStream

2.Thrift RPC服务

3.netty的服务

有没有可行的解决方案?

伊谢尔伦伊谢尔伦2765 hari yang lalu390

membalas semua(2)saya akan balas

  • 黄舟

    黄舟2017-04-18 10:35:14

    Menurut pemahaman saya, anda memerlukan komunikasi antara proses, bukan?
    Thrift dan Netty yang anda nyatakan kedua-duanya boleh diterima.
    Atau anda juga boleh menggunakan baris gilir mesej Setiap pakej balang dianggap sebagai pengeluar dan menghantar mesej ke baris gilir. Serahkan kiraan sebagai mesej, dan kemudian projek Web Spring anda boleh mendapatkan semula nilai kiraan daripada baris gilir.

    balas
    0
  • 巴扎黑

    巴扎黑2017-04-18 10:35:14

    Tidak perlu.
    Adalah ok untuk menyimpan terus count dalam map menggunakan struktur redis. hightcharts Mendapat data terus daripada redis semasa membuat persembahan.
    Strukturnya adalah seperti berikut.

    counter
        |
        | key1: v1`
        | key2: v2

    balas
    0
  • Batalbalas