zoukankan      html  css  js  c++  java
  • IDEA Spark Streaming 操作(套接字流)-----make socket数据源

    import java.io.PrintWriter
    import java.net.ServerSocket
    
    import scala.io.Source
    
    
    object DStream_makeSocket {
      def main(args: Array[String]): Unit = {
        val file="/home/soyo/桌面/spark编程测试数据/1.txt"
        val lines=Source.fromFile(file).getLines().toList
          lines.foreach(println)
        val rowCount=lines.length //行数
        val listen= new ServerSocket(6667)
        while(true)
          {
            val socket=listen.accept()
            val thread=new Thread(){
              override def run={
                println("客户端地址为:"+socket.getInetAddress)
                val send=new PrintWriter(socket.getOutputStream,true)
                while (true)
                  {
                    Thread.sleep(1000)  //每隔1秒发送一次数据
                   val content=lines(index(rowCount))
                    println("******")
                    println(content)
                    send.write(content+"
    ")
                    send.flush()
                  }
                socket.close()
              }
            }
            thread.start()
          }
      }
      def index(length:Int):Int ={
        val rd=new java.util.Random()
        rd.nextInt(length) //随机获取0-length 之间的一个数
      }
    
    }

    功能:随机读取1.txt文件内的一行 发送到6667端口

    备注:需要同时运行监听程序

  • 相关阅读:
    磁盘管理RAID
    06磁盘
    7.30
    作业
    chapter02作业
    2019-07-23
    Tomcat三种运行模式(BIO, NIO, APR)
    Tomcat监控管理
    tomcat中web站点的部署
    Tomcat访问控制
  • 原文地址:https://www.cnblogs.com/soyo/p/7676149.html
Copyright © 2011-2022 走看看