- 日志收集Day008
ccnnlxc
java开发语言
1.zk集群优化修改zookeeper的堆内存大小,一般情况下,生产环境给到2G足以,如果规模较大可以适当调大到4G。(1)配置ZK的堆内存vim/app/softwares/zk/conf/java.envexportJAVA_HOME=/sortwares/jdk1.8.0_291exportJVMFLAGS="-Xms256m-Xmx256m$JVMFLAGS"EOF(2)同步文件到其他节点
- 基于Zookeeper的临时顺序节点实现分布式锁
yield-bytes
Zookeeper
在前面的文章中,已经给出基于kazoo操作zk的逻辑,接下来利用zk的临时序列节点机制实现分布式锁,分布式锁场景使用非常广,在读写方面都非常适合,个人认为比基于redis实现的分布式锁更具可靠性(但性能方面,redis应该更强?)。1、zk的临时顺序节点 临时顺序节点其实是结合临时节点和顺序节点的特点:在某个固定的持久节点(例如/locker)下创建子节点时,zk通过将10位的序列号附加到原
- 一次zookeeper Curator客户端导致JVM OOM问题的分析记录
辉度
并发多线程
一次JVMOOM问题的分析记录OOM问题发生在客户的开发环境,系统是一个监控系统,表现为先高CPU,页面极卡,最后发生OOM。问实施人员拿到HeapDump文件。来看看到底是内存不够用溢出了,还是发生了内存泄漏。HeapDumpjdk自带的jvisualvm可以用,但是表现在我电脑上卡的不行。Dump文件接近7G。jprofiler,商用。本次分析借用其试用的10天。Classes查看到Linke
- kafka开启kerberos
蘑菇丁
debian运维
一、基本环境准备创建票据创建Kerberos主体(Principal):使用kadmin.local或kadmin命令为Zookeeper和Kafka服务创建Kerberos主体。例如:注意有几台机器创建几个kadmin.local-q"addprinc-randkeyzookeeper/
[email protected]"kadmin.local-q"addprinc-rand
- HBase工具类(Scala 版)
Amin-沐
大数据私人日记帮助文档hbasescalaspark大数据
objectHBaseHelper{privatevallogger=LoggerFactory.getLogger(getClass)valQUORUM:String=PropertiesUtils.getString("hbase.zookeeper.quorum")valPORT:String=PropertiesUtils.getString("hbase.zookeeper.port")
- Zookeeper(29)Zookeeper的持久化机制是什么?
辞暮尔尔-烟火年年
微服务zookeeper分布式云原生
Zookeeper的持久化机制是其保证数据一致性和高可用性的重要组成部分。Zookeeper通过将状态信息持久化到磁盘上,以确保在服务器重启或崩溃后能够恢复数据。Zookeeper的持久化机制主要包括事务日志(TransactionLog)和快照(Snapshot)。持久化机制详细解释事务日志(TransactionLog):每次写操作(如创建节点、更新节点数据等)都会被记录到事务日志中。事务日志
- 后端笔记01 | 分布式锁实现与思考
谷嘟
后端开发笔记分布式后端redis
参考资料:JavaGuide:分布式锁JavaGuide:分布式锁的实现方案总结阿里云开发者:分布式锁实现原理与最佳实践字节跳动技术团队:聊聊分布式锁分布式锁关键要点分布式锁的对哪些场景的必要性,分布式锁和本地锁的区别,分布式锁具备的条件实现分布式锁的技术方案及其区别总结Redis实现分布式锁实现方式、存在问题、解决方案ZooKeeper分布式锁的原理、实现步骤。分布式锁的简要介绍什么是分布式锁
- kafka-部署安装
xiao-xiang
kafkakafka分布式
一.简述:Kafka是一个分布式流处理平台,常用于构建实时数据管道和流应用。二.安装部署:1.依赖:a).Java:Kafka需要Java8或更高版本。b).zookeeper:#tarfxvzzookeeper-3.7.0.tar.gz#mvzookeeper-3.7.0zookeeper&&cdzookeeper#mkdirdatalog编辑conf/zoo.cfg文件,设置dataDir和其
- python链接hbase模块_Python连接Hbase
weixin_40001395
python链接hbase模块
1、安装Hbase库pipinstallhappybase2、连接Hbase2.1、查看Hbase配置image.png2.2、使用happyhase连接hbaseimporthappybase#注意protocol和transport这两个参数,需要和hbase启动命令中的相同,否则会报错connection=happybase.Connection('qa-cdh-001',port=9090
- python操作HBase
王壮_
大数据Pythonhbase数据库大数据
1.安装happybase和thriftpipinstallhappybasepipinstallthrift2.启动hbase的thrift进程,并指定端口9090hbase-daemon.shstartthrift-p90903.操作HBaseimporthappybaseconnection=happybase.Connection(host='hadoop10',port=9090)tab
- HBase伪分布式安装配置流程
TheMountainGhost
hbase数据库大数据
要配置HBase的伪分布式模式,以下是详细的操作步骤,确保每一步都执行准确。1.准备工作确保已经安装并配置好了Hadoop(伪分布式),因为HBase依赖HDFS。Hadoop已经配置并能够正常运行。Java已经安装并配置好了环境变量。SSH配置免密登录(通常在Hadoop环境中已配置)。2.下载并解压HBase下载HBase安装包并解压到你想要的目录:tar-zxvfhbase-2.4.18-b
- kafka内部工作机制
一只叫狗的猫
#kafka
集群中成员关系kafka使用zookeeper来维护成员信息。没个broker都有唯一的id,这个标识可以在配置文件中配置,在broker启动的时候,它会创建临时的节点把id注册到zookeeper中,当有其他broker加入集群中时,会判断是否已经有这个id,如果有相同的id则会注册失败。当broker宕机的时候,broker创建的临时节点会从zookeeper中移除,其它的kafka组件也都会
- Zookeeper(26)Zookeeper的ZAB协议是什么?
辞暮尔尔-烟火年年
微服务zookeeper分布式云原生
Zookeeper的ZAB协议(ZookeeperAtomicBroadcast)是Zookeeper保证数据一致性和高可用性的核心协议。ZAB协议主要用于在分布式系统中提供原子广播和一致性保证。它的设计目标是确保在任何时候,集群中的所有节点都能看到相同的事务更新顺序,从而保证数据的一致性。ZAB协议详细介绍ZAB协议由两个主要部分组成:Leader选举:当Zookeeper集群启动时,或当前Le
- 【Kafka:概念、架构与应用】
三日看尽长安花
系统架构师kafka架构分布式
Kafka:概念、架构与应用目录什么是KafkaKafka的核心概念2.1生产者(Producer)2.2消费者(Consumer)2.3主题(Topic)2.4分区(Partition)2.5消息偏移量(Offset)2.6消费组(ConsumerGroup)Kafka的架构设计3.1Broker与集群3.2Zookeeper的作用Kafka的工作流程Kafka的应用场景Kafka的优缺点分析<
- Spring Clound + Spring Clound Alibaba 全家桶
更容易记住我
SpringCloundjavaspringcloudalibaba
官方网站:https://spring.io/projects/spring-cloud/一、服务注册中心Eureka服务注册中心EurekaZookeeperZookeeperConsul服务注册中心ConsulNacos(推荐)服务注册中心Nacos二、服务调用1Ribbon+LoadBalancer服务调用Ribbon三、服务调用2OpenFegin服务调用OpenFeign四、服务降级Hy
- Hadoop、Hive、Hbase集群间的数据迁移
这个操蛋的人生!!!
一、hadoop集群间拷贝数据:迁移之前需要把两个集群的所有节点都互通/etc/hosts文件(重要,包括各个数据节点)两个集群版本不相同hadoopdistcphftp://192.168.57.73:50070/hive3/20171008/hive3/如果两个集群的版本相同,则可以使用hdfs协议,命令如下:hadoopdistcphdfs://namenodeip:9000/foohdfs
- 日志收集平台day01:项目设计
intqao
日志收集平台项目linuxkafkazookeepernginxpython
一、项目需求本项目的目的是模拟生产环境下对web服务器产生的日志进行收集并存入数据库,最终以web应用方式展示日志数据。二、技术选型环境:CentOs7web服务器:nginx/1.20.1(仅测试使用)消息队列:kafka2.12分布式应用程序协调服务软件:zookeeper3.6.3生产者:filebeat-7.17.5-1.x86_64消费者:使用python中的模块pykafka实现消费者
- Zookeeper(23)Zookeeper的选举机制是什么?
辞暮尔尔-烟火年年
微服务zookeeper分布式云原生
Zookeeper的选举机制是确保在集群中始终有一个唯一的Leader。Leader负责处理所有的写请求和协调事务的提交,而Follower负责处理读请求和转发写请求给Leader。选举机制的核心是ZookeeperAtomicBroadcast(Zab)协议,它确保在发生节点故障或网络分区时,能够快速而可靠地选出新的Leader。Zookeeper选举机制详细介绍初始选举:当Zookeeper集
- Zookeeper启动指定JDK版本
费曼乐园
Zookeeperzookeeper
1.从官网下载jdk21版本。JavaDownloads|Oracle2.将下载的jdk-21_linux-x64_bin.tar.gz文件上传的主机/usr/java目录下面。3.在/usr/java目录下面解压文件。tar-zxvfjdk-21_linux-x64_bin.tar.gz4.修改zookeeper的bin目录下面的zkEnv.sh脚本,在关于获取JAVA_HOME的脚本行前面添加
- 如何用Netty实现一个负载均衡组件
youyouiknow
tech-reviewjava后端架构
一、总体架构一个基本的负载均衡组件通常包含以下几个核心模块:服务注册与发现(ServiceRegistry&Discovery):功能:维护可用的后端服务实例列表(例如IP地址和端口)。实现要点:注册:服务实例启动时,将自己注册到注册中心。发现:负载均衡器从注册中心获取服务实例列表。健康检查:定期检查服务实例的健康状态,剔除不健康的实例。可选技术:ZooKeeper,etcd,Consul,Nac
- 分布式系统架构:分布式缓存
工业甲酰苯胺
架构分布式缓存
分布式缓存也是面试常见的问题,通常面试官会问为什么要用缓存,以及用的Redis是哪种模式,用的过程中遇到哪些问题这些1.AP还是CPRedis集群就是典型的AP式,它具有高性能、高可用等特点,但它却并不保证强一致性。而能够保证强一致性的ZooKeeper、Doozerd、Etcd等框架,吞吐量比不过Redis,通常不会用作“缓存框架”,而是作为通知、协调、队列、分布式锁等使用2.透明多级缓存TMC
- Zookeeper(22)Zookeeper的Leader、Follower和Observer角色分别是什么?
辞暮尔尔-烟火年年
微服务zookeeper分布式云原生
Zookeeper是一个分布式协调服务,采用了Leader-Follower架构来保证数据的一致性和高可用性。集群中的每个节点都有一个特定的角色:Leader、Follower和Observer。以下是对这些角色的详细介绍和代码示例。Leader、Follower和Observer角色Leader:职责:Leader是Zookeeper集群中的核心节点,负责处理所有写请求和协调事务的提交。Lead
- MySQL、HBase 和 Elasticsearch:特点与区别详解
一休哥助手
mysqlhbaseelasticsearch
引言随着大数据和分布式计算的快速发展,数据库系统已从传统的关系型数据库(RDBMS)扩展到多种新型数据存储技术,包括NoSQL数据库和搜索引擎等。MySQL、HBase和Elasticsearch是其中三种非常常见的数据存储系统,它们在各自的领域都有着重要的应用。MySQL作为传统的关系型数据库,HBase则是一个分布式、可扩展的NoSQL数据库,而Elasticsearch则是一个分布式的搜索引
- kafka学习笔记2 —— 筑梦之路
筑梦之路
Java技术linux系统运维kafka学习笔记
KRaft模式Kafka的KRaft模式是一种新的元数据管理方式,旨在去除对ZooKeeper的依赖,使Kafka成为一个完全自包含的系统。在Kafka的传统模式下,元数据管理依赖于ZooKeeper,这增加了部署和运维的复杂性。为了解决这个问题,Kafka社区引入了KRaft模式。在KRaft模式下,所有的元数据,包括主题、分区信息、副本位置等,都被存储在Kafka集群内部的特殊日志中。这个日志
- Nacos 和 Zookeeper
小馋喵知识杂货铺
性能中间件
在分布式系统中,服务注册与发现机制是实现微服务架构的核心之一。服务注册中心是一个集中管理的地方,服务提供者在启动时会向服务注册中心注册自身的网络地址等信息,服务消费者可以通过注册中心查询到服务的网络地址,从而进行调用。常见的服务注册中心有Nacos和Zookeeper(ZK),它们各有特点,适用于不同的场景。1.服务注册与发现的基本概念服务注册:每个微服务启动时,会向注册中心注册自己的信息(如:服
- k8s部署Kafka集群
潞哥的博客
kuberneteskafka容器
1.1、Kafka(消息队列)是一个分布式消息中间件,支持分区的、多副本的、多订阅者的、基于zookeeper协调的分布式消息系统。通俗来说:kafka就是一个存储系统,存储的数据形式为“消息";1.2、常用的消息系统有哪些以及各自的特点有activemq,rabbitmq,rocketmq,kafka1.3、为什么使用消息队列1)、提高扩展性:因为消息队列解耦了处理过程,有新增需求时只要另外增加
- K8S环境快速部署Kafka(K8S外部可访问)
2401_83817392
程序员kuberneteskafka容器
apiVersion:v1kind:Servicemetadata:name:zookeeper-nodeportnamespace:kafka-testspec:type:NodePortports:port:2181nodePort:32181selector:app:zookeeperrelease:kafka执行命令:kubectlapply-fzookeeper-nodeport-svc
- 生成目录结构(tree)
刘小二Start
编辑器
生成目录结构(tree)本操作使用场景:MacOS,Homebrew1.安装(tree)工具brewinstalltree2.Tree操作说明安装完成后,可直接运行:tree,既可自动生成当前目录文件下目录结构。输入treehelp可查看tree项目可操作命令,具体命令结构如下:$tree--helpusage:tree[-adfghilnpqrstuvxACDFNS][-HbaseHREF][-
- kafka 学习笔记3-传统部署Kraft模式集群——筑梦之路
筑梦之路
kafka学习笔记
部署kafka集群规划一般模式下,元数据在zookeeper中,运行时动态选举controller,由controller进行Kafka集群管理。kraft模式架构下,不再依赖zookeeper集群,而是用三台controller节点代替zookeeper,元数据保存在controller中,由controller直接进行Kafka集群管理。ip主机名角色nodeid192.168.100.131
- Fluss安装体验
WYRM_GOLD
flussflinkbigdatazookeeperkafka
1、zookeeper安装笔者下载的是fluss0.5版本,当前fluss0.5版本需要依赖zookeeper服务。1.1下载zk下载地址:https://mirrors.aliyun.com/apache/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz1.1.1zk集群规划node1192.168.40.1node2192.
- 怎么样才能成为专业的程序员?
cocos2d-x小菜
编程PHP
如何要想成为一名专业的程序员?仅仅会写代码是不够的。从团队合作去解决问题到版本控制,你还得具备其他关键技能的工具包。当我们询问相关的专业开发人员,那些必备的关键技能都是什么的时候,下面是我们了解到的情况。
关于如何学习代码,各种声音很多,然后很多人就被误导为成为专业开发人员懂得一门编程语言就够了?!呵呵,就像其他工作一样,光会一个技能那是远远不够的。如果你想要成为
- java web开发 高并发处理
BreakingBad
javaWeb并发开发处理高
java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。 一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降。常用的优化措施是M-S(
- mysql批量更新
ekian
mysql
mysql更新优化:
一版的更新的话都是采用update set的方式,但是如果需要批量更新的话,只能for循环的执行更新。或者采用executeBatch的方式,执行更新。无论哪种方式,性能都不见得多好。
三千多条的更新,需要3分多钟。
查询了批量更新的优化,有说replace into的方式,即:
replace into tableName(id,status) values
- 微软BI(3)
18289753290
微软BI SSIS
1)
Q:该列违反了完整性约束错误;已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 11.0” Hresult: 0x80004005 说明:“不能将值 NULL 插入列 'FZCHID',表 'JRB_EnterpriseCredit.dbo.QYFZCH';列不允许有 Null 值。INSERT 失败。”。
A:一般这类问题的存在是
- Java中的List
g21121
java
List是一个有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
与 set 不同,列表通常允许重复
- 读书笔记
永夜-极光
读书笔记
1. K是一家加工厂,需要采购原材料,有A,B,C,D 4家供应商,其中A给出的价格最低,性价比最高,那么假如你是这家企业的采购经理,你会如何决策?
传统决策: A:100%订单 B,C,D:0%
&nbs
- centos 安装 Codeblocks
随便小屋
codeblocks
1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可yum install gccyum install gcc-c++
2.安装gtk2-devel,因为默认已经安装了正式产品需要的支持库,但是没有安装开发所需要的文档.yum install gtk2*
3. 安装wxGTK
yum search w
- 23种设计模式的形象比喻
aijuans
设计模式
1、ABSTRACT FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:
- 开发管理 CheckLists
aoyouzi
开发管理 CheckLists
开发管理 CheckLists(23) -使项目组度过完整的生命周期
开发管理 CheckLists(22) -组织项目资源
开发管理 CheckLists(21) -控制项目的范围开发管理 CheckLists(20) -项目利益相关者责任开发管理 CheckLists(19) -选择合适的团队成员开发管理 CheckLists(18) -敏捷开发 Scrum Master 工作开发管理 C
- js实现切换
百合不是茶
JavaScript栏目切换
js主要功能之一就是实现页面的特效,窗体的切换可以减少页面的大小,被门户网站大量应用思路:
1,先将要显示的设置为display:bisible 否则设为none
2,设置栏目的id ,js获取栏目的id,如果id为Null就设置为显示
3,判断js获取的id名字;再设置是否显示
代码实现:
html代码:
<di
- 周鸿祎在360新员工入职培训上的讲话
bijian1013
感悟项目管理人生职场
这篇文章也是最近偶尔看到的,考虑到原博客发布者可能将其删除等原因,也更方便个人查找,特将原文拷贝再发布的。“学东西是为自己的,不要整天以混的姿态来跟公司博弈,就算是混,我觉得你要是能在混的时间里,收获一些别的有利于人生发展的东西,也是不错的,看你怎么把握了”,看了之后,对这句话记忆犹新。 &
- 前端Web开发的页面效果
Bill_chen
htmlWebMicrosoft
1.IE6下png图片的透明显示:
<img src="图片地址" border="0" style="Filter.Alpha(Opacity)=数值(100),style=数值(3)"/>
或在<head></head>间加一段JS代码让透明png图片正常显示。
2.<li>标
- 【JVM五】老年代垃圾回收:并发标记清理GC(CMS GC)
bit1129
垃圾回收
CMS概述
并发标记清理垃圾回收(Concurrent Mark and Sweep GC)算法的主要目标是在GC过程中,减少暂停用户线程的次数以及在不得不暂停用户线程的请夸功能,尽可能短的暂停用户线程的时间。这对于交互式应用,比如web应用来说,是非常重要的。
CMS垃圾回收针对新生代和老年代采用不同的策略。相比同吞吐量垃圾回收,它要复杂的多。吞吐量垃圾回收在执
- Struts2技术总结
白糖_
struts2
必备jar文件
早在struts2.0.*的时候,struts2的必备jar包需要如下几个:
commons-logging-*.jar Apache旗下commons项目的log日志包
freemarker-*.jar  
- Jquery easyui layout应用注意事项
bozch
jquery浏览器easyuilayout
在jquery easyui中提供了easyui-layout布局,他的布局比较局限,类似java中GUI的border布局。下面对其使用注意事项作简要介绍:
如果在现有的工程中前台界面均应用了jquery easyui,那么在布局的时候最好应用jquery eaysui的layout布局,否则在表单页面(编辑、查看、添加等等)在不同的浏览器会出
- java-拷贝特殊链表:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
bylijinnan
java
public class CopySpecialLinkedList {
/**
* 题目:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
拷贝pNext指针非常容易,所以题目的难点是如何拷贝pRand指针。
假设原来链表为A1 -> A2 ->... -> An,新拷贝
- color
Chen.H
JavaScripthtmlcss
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML> <HEAD>&nbs
- [信息与战争]移动通讯与网络
comsci
网络
两个坚持:手机的电池必须可以取下来
光纤不能够入户,只能够到楼宇
建议大家找这本书看看:<&
- oracle flashback query(闪回查询)
daizj
oracleflashback queryflashback table
在Oracle 10g中,Flash back家族分为以下成员:
Flashback Database
Flashback Drop
Flashback Table
Flashback Query(分Flashback Query,Flashback Version Query,Flashback Transaction Query)
下面介绍一下Flashback Drop 和Flas
- zeus持久层DAO单元测试
deng520159
单元测试
zeus代码测试正紧张进行中,但由于工作比较忙,但速度比较慢.现在已经完成读写分离单元测试了,现在把几种情况单元测试的例子发出来,希望有人能进出意见,让它走下去.
本文是zeus的dao单元测试:
1.单元测试直接上代码
package com.dengliang.zeus.webdemo.test;
import org.junit.Test;
import o
- C语言学习三printf函数和scanf函数学习
dcj3sjt126com
cprintfscanflanguage
printf函数
/*
2013年3月10日20:42:32
地点:北京潘家园
功能:
目的:
测试%x %X %#x %#X的用法
*/
# include <stdio.h>
int main(void)
{
printf("哈哈!\n"); // \n表示换行
int i = 10;
printf
- 那你为什么小时候不好好读书?
dcj3sjt126com
life
dady, 我今天捡到了十块钱, 不过我还给那个人了
good girl! 那个人有没有和你讲thank you啊
没有啦....他拉我的耳朵我才把钱还给他的, 他哪里会和我讲thank you
爸爸, 如果地上有一张5块一张10块你拿哪一张呢....
当然是拿十块的咯...
爸爸你很笨的, 你不会两张都拿
爸爸为什么上个月那个人来跟你讨钱, 你告诉他没
- iptables开放端口
Fanyucai
linuxiptables端口
1,找到配置文件
vi /etc/sysconfig/iptables
2,添加端口开放,增加一行,开放18081端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 18081 -j ACCEPT
3,保存
ESC
:wq!
4,重启服务
service iptables
- Ehcache(05)——缓存的查询
234390216
排序ehcache统计query
缓存的查询
目录
1. 使Cache可查询
1.1 基于Xml配置
1.2 基于代码的配置
2 指定可搜索的属性
2.1 可查询属性类型
2.2 &
- 通过hashset找到数组中重复的元素
jackyrong
hashset
如何在hashset中快速找到重复的元素呢?方法很多,下面是其中一个办法:
int[] array = {1,1,2,3,4,5,6,7,8,8};
Set<Integer> set = new HashSet<Integer>();
for(int i = 0
- 使用ajax和window.history.pushState无刷新改变页面内容和地址栏URL
lanrikey
history
后退时关闭当前页面
<script type="text/javascript">
jQuery(document).ready(function ($) {
if (window.history && window.history.pushState) {
- 应用程序的通信成本
netkiller.github.com
虚拟机应用服务器陈景峰netkillerneo
应用程序的通信成本
什么是通信
一个程序中两个以上功能相互传递信号或数据叫做通信。
什么是成本
这是是指时间成本与空间成本。 时间就是传递数据所花费的时间。空间是指传递过程耗费容量大小。
都有哪些通信方式
全局变量
线程间通信
共享内存
共享文件
管道
Socket
硬件(串口,USB) 等等
全局变量
全局变量是成本最低通信方法,通过设置
- 一维数组与二维数组的声明与定义
恋洁e生
二维数组一维数组定义声明初始化
/** * */ package test20111005; /** * @author FlyingFire * @date:2011-11-18 上午04:33:36 * @author :代码整理 * @introduce :一维数组与二维数组的初始化 *summary: */ public c
- Spring Mybatis独立事务配置
toknowme
mybatis
在项目中有很多地方会使用到独立事务,下面以获取主键为例
(1)修改配置文件spring-mybatis.xml <!-- 开启事务支持 --> <tx:annotation-driven transaction-manager="transactionManager" /> &n
- 更新Anadroid SDK Tooks之后,Eclipse提示No update were found
xp9802
eclipse
使用Android SDK Manager 更新了Anadroid SDK Tooks 之后,
打开eclipse提示 This Android SDK requires Android Developer Toolkit version 23.0.0 or above, 点击Check for Updates
检测一会后提示 No update were found