当前位置: 首页 > news >正文

自己做网站服务器要多少钱网站建设及维护课件免费

自己做网站服务器要多少钱,网站建设及维护课件免费,网站的结构是什么样的,网站解析需要多长时间基于持久化的wordCount程序#xff01;中途遇到了一个坑#xff01; 自己手动封装一个静态线程池#xff0c;使用RDD的foreachPartition操作#xff0c;并且在该操作内部#xff0c;从静态连接池中#xff0c;通过静态方法#xff0c;获取一个连接#xff0c;使用之后…基于持久化的wordCount程序中途遇到了一个坑 自己手动封装一个静态线程池使用RDD的foreachPartition操作并且在该操作内部从静态连接池中通过静态方法获取一个连接使用之后再换回来这样的话可以在对个RDD的partition之间也可以复用连接了而且可以让连接池采取懒创建的策略并且空闲一段时间后将其释放掉。 代码 package com.bynear.spark_Streaming; import com.bynear.tool.ConnectionPool; import com.google.common.base.Optional; import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaPairRDD; import org.apache.spark.api.java.JavaSparkContext; import org.apache.spark.api.java.function.*; import org.apache.spark.streaming.Durations; import org.apache.spark.streaming.api.java.JavaDStream; import org.apache.spark.streaming.api.java.JavaPairDStream; import org.apache.spark.streaming.api.java.JavaReceiverInputDStream; import org.apache.spark.streaming.api.java.JavaStreamingContext; import scala.Tuple2;import java.sql.Connection; import java.sql.Statement; import java.util.Arrays; import java.util.Iterator; import java.util.List;/* 2018/5/16* 11:30* 基于持久化的wordcount程序*/ public class PersisWordCount {public static void main(String[] args) {final SparkConf conf new SparkConf().setAppName(persiswordcount).setMaster(local[2]);JavaSparkContext jsc new JavaSparkContext(conf);JavaStreamingContext jssc new JavaStreamingContext(jsc, Durations.seconds(5));jssc.checkpoint(hdfs://Spark01:9000/zjs/chepoint);JavaReceiverInputDStreamString lines jssc.socketTextStream(localhost, 9999);JavaDStreamString words lines.flatMap(new FlatMapFunctionString, String() {Overridepublic IterableString call(String line) throws Exception {return Arrays.asList(line.split( ));}});JavaPairDStreamString, Integer pairs words.mapToPair(new PairFunctionString, String, Integer() {Overridepublic Tuple2String, Integer call(String word) throws Exception {return new Tuple2String, Integer(word, 1);}});final JavaPairDStreamString, Integer wordcount pairs.updateStateByKey(new Function2ListInteger, OptionalInteger, OptionalInteger() {Overridepublic OptionalInteger call(ListInteger values, OptionalInteger state) throws Exception {Integer newValue 0;if (state.isPresent()) {newValue state.get();}for (Integer value : values) {newValue value;}return Optional.of(newValue);}});wordcount.foreachRDD(new FunctionJavaPairRDDString, Integer, Void() {Overridepublic Void call(JavaPairRDDString, Integer wordCountsRDD) throws Exception {wordCountsRDD.foreachPartition(new VoidFunctionIteratorTuple2String, Integer() {Overridepublic void call(IteratorTuple2String, Integer wordcounts) throws Exception {Connection conn ConnectionPool.getConection();Tuple2String, Integer wordcount null;while (wordcounts.hasNext()) {wordcount wordcounts.next();String sql insert into word (word,count) values ( wordcount._1 , wordcount._2 );System.out.println(sqlconnYES);Statement stmt conn.createStatement();stmt.executeUpdate(sql);}ConnectionPool.returnConnection(conn);}});return null;}});jssc.start();jssc.awaitTermination();jssc.stop();} }手动搭建的线程池 package com.bynear.tool; import java.sql.Connection; import java.sql.DriverManager; import java.util.LinkedList; /*** 2018/5/16* 12:24*/ public class ConnectionPool {// 静态的Connection队列public static LinkedListConnection connectionQueue;// 加载驱动static {try {Class.forName(com.mysql.jdbc.Driver);} catch (ClassNotFoundException e) {e.printStackTrace();}}// 获取连接多线程访问并发控制public synchronized static Connection getConection() {connectionQueue new LinkedListConnection();try {if (connectionQueue.isEmpty()) {for (int i 0; i 2; i) {Connection conn DriverManager.getConnection(jdbc:mysql://192.168.2.10:3306/testdb,root, 123456);connectionQueue.push(conn);}}} catch (Exception e) {e.printStackTrace();}return connectionQueue.poll();}public static void returnConnection(Connection conn) {connectionQueue.push(conn);} }最开始自己搭建的线程池中用的方法为 if (connectionQueuenull) { for (int i 0; i 2; i) { Connection conn DriverManager.getConnection(“jdbc:mysql://192.168.2.10:3306/testdb”, “root”, “123456”); connectionQueue.push(conn); } } 将代码提交到集群上时一直抱空指指针。 后来 System.out.println(sqlconn”YES”);输出一下conn conn ConnectionPool.getConection(); insert into wordcount (word,count) values (‘heool,word’,1)nullYES 为null 跑成功代码 if (connectionQueue.isEmpty()) { for (int i 0; i 2; i) { Connection conn DriverManager.getConnection(“jdbc:mysql://192.168.2.10:3306/testdb”, “root”, “123456”); connectionQueue.push(conn); } } 输出结果在SQL中查询 mysql select * from word; —-—————————————- | id | updated_time | word | count | —-—————————————- | 1 | 2018-05-16 01:11:10 | ???,?? | 1 | | 2 | 2018-05-16 01:11:15 | ???,?? | 1 | | 3 | 2018-05-16 01:13:00 | hello,word | 1 | | 4 | 2018-05-16 01:16:00 | hello | 1 | | 5 | 2018-05-16 01:16:00 | word | 1 | | 6 | 2018-05-16 01:16:05 | hello | 1 | | 7 | 2018-05-16 01:16:05 | word | 1 | —-—————————————- 7 rows in set (0.00 sec) 完美成功
http://www.huolong8.cn/news/116502/

相关文章:

  • 新乡做网站的多吗什么是最经典最常用的网站推广方式
  • seo 网站太小网站推广易网宣
  • 如何搭建静态网站电子商务网站开发背景与原因
  • 手机建站cms企业门户 登录
  • 网上免费网站的域名如何做网站导航栏的seo优化
  • 用html表格做的网站互联网公司做什么的
  • 搬家网站模板外发加工网贴吧
  • wordpress 电影网站模板西安seo交流
  • 建网站建设的基本流程python网站开发用什么
  • 海外广告优化师seo黑帽多久入门
  • 中牟网站制作重庆城乡建设局网站
  • 怎么选择电商网站建设php网站文件下载怎么做
  • 开封网站优化公司免费自己制作网站方法
  • 阿里自助建站企业网址怎么申请
  • 电子商务与网站建设的报告揭阳网站制作价格
  • 网站建设vps开个免费的网站多少钱
  • 深圳比较好的设计网站公司吗律师个人 网站做优化
  • 网站集约化建设规划wordpress 403 - 禁止访问: 访问被拒绝
  • 网站如何做sem优化网站建设广告图片
  • 网站建设计划设计方案360建筑网发的消息怎么取消
  • a5创业网站建设上海虹口网站建设公司
  • 成都网站设计报价优秀企业网站首页
  • 阿里网站备案寄材料相机网站建设策划书
  • 请问做网站怎么赚钱卫生计生加强门户网站建设
  • 喊人做网站需要注意些什么海口在线分类信息
  • 招聘软件开发工程师网站seo最新优化方法
  • 返利网网站怎么做抖音推广怎么做
  • 台州建设局网站信息价中国价格信息网
  • 烟台制作网站的公司简介百度手机下载安装
  • 建筑企业网站源码自己怎么健网站视频下载