上一页 1 2 3 4 5 6 7 8 9 10 ··· 31 下一页
  2013年6月30日
摘要: 我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,传输的都是无意义数据,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。1) Socket是一个针对TCP和UDP编程的接口,你可以借助它建立TCP连接等等。而TCP和UDP协议属于传输层。 而http是个应用层的协议,它实际上也建立在TCP协议之上。(HTTP是轿车,提供了封装或者显示数据的具体形式 阅读全文
posted @ 2013-06-30 15:18 kkmm 阅读(465) 评论(0) 推荐(0) 编辑
  2013年6月27日
摘要: Q:最近看了一些MSMQ的资料,感觉很是奇怪,在IIS中装上此服务后,感觉这东西就像一个小数据库一样,暂时保存一些发送过来的数据,然后另一端再去收取?A:是的。Q:这样有什么用呢?直接在数据库中建立一个表不就直接解决了吗?A:你可以在数据库中保存一个对象(类的实例)吗?(当然SQL2005是面向对象的了),比如你有一个customer的类的实例,包含有这个customer的名称、年龄等等,你可以直接把这个实例保存到MSMQ,取出后也是实例,由你的问题可以看出对OOP的概念还不熟悉。为什么要用OOP而不是所有的应用都用数据库呢?这个问题你应该好好想想。Q:还可以实现到底发送给哪一个的用户,可是M 阅读全文
posted @ 2013-06-27 10:14 kkmm 阅读(409) 评论(0) 推荐(0) 编辑
  2013年6月25日
摘要: 具体操作方法如下:1。到C:\Windows文件夹下,打开regedit.exe2。Ctrl+F,搜索“ShellIconOverlayIdentifiers”3。将TortoiseAdded、TortoiseConflict……TortoiseUnversioned分别重命名,命名为0TortoiseAdded、1TortoiseConflict……8TortoiseUnversioned。如下图:如果还不行,你可能装了很多云盘导致的,比如装了 金山快盘和 360云盘 百度云盘之类的, 建议直接删除和卸载就可以了。我的问题就是装了360云盘 而导致SVN对号没有显示出来!直接果断卸载360云 阅读全文
posted @ 2013-06-25 10:13 kkmm 阅读(4996) 评论(0) 推荐(0) 编辑
  2013年6月8日
摘要: 工作原理:为每个内存对象维护一个引用计数。当有新的引用指向某对象时就将该对象的引用计数加一,当指向该对象的引用被销毁时将该计数减一,当计数归零时,就回收该对象所占用的内存资源。缺陷:在每次内存对象被引用或引用被销毁的时候都必须修改引用计数,这类操作被称为footprint。引用计数的footprint是很高的。这使得程序整体的性能受到比较大的影响。因此多数现代的程序语言都不适用引用计数作为垃圾收集的实现算法。另外,引用计数还有一个致命的缺陷,当程中出现序循环引用时,引用计数算法无法检测出来,被循环引用的内存对象就成了无法回收的内存。从而引起内存泄露。举例说明就是:class A{ publi. 阅读全文
posted @ 2013-06-08 11:39 kkmm 阅读(6239) 评论(0) 推荐(0) 编辑
  2013年6月3日
摘要: 在SQL数据库中,最大/最小值函数—MAX()/MIN()是经常要用到的,下面就将为您分别介绍MAX()函数和MIN()函数的使用,供您参考,希望对您学习SQL数据库能有些帮助。当需要了解一列中的最大值时,可以使用MAX()函数;同样,当需要了解一列中的最小值时,可以使用MIN()函数。语法如下。SELECT MAX (column_name) / MIN (column_name)FROM table_name说明:列column_name中的数据可以是数值、字符串或是日期时间数据类型。MAX()/MIN()函数将返回与被传递的列同一数据类型的单一值。实例7 MAX()函数的使用查询TEAC 阅读全文
posted @ 2013-06-03 11:55 kkmm 阅读(55530) 评论(0) 推荐(1) 编辑
  2013年5月5日
摘要: http://bbs.hiapk.com/thread-7959-1-1.html在一个Android应用中,主要是由四种组件组成的,这四种组件可参考“Android应用的构成”。而这四种组件是独立的,它们之间可以互相调用,协调工作,最终组成一个真正的Android应用。在这些组件之间的通讯中,主要是由Intent协助完成的。Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调 阅读全文
posted @ 2013-05-05 09:34 kkmm 阅读(223) 评论(0) 推荐(0) 编辑
  2013年5月2日
摘要: http://www.blogjava.net/caojianhua/archive/2013/01/28/394847.htmlRedis为单进程单线程模式,采用队列模式将并发访问变为串行访问。Redis本身没有锁的概念,Redis对于多个客户端连接并不存在竞争,但是在Jedis客户端对Redis进行并发访问时会发生连接超时、数据转换错误、阻塞、客户端关闭连接等问题,这些问题均是由于客户端连接混乱造成。对此有2种解决方法:1.客户端角度,为保证每个客户端间正常有序与Redis进行通信,对连接进行池化,同时对客户端读写Redis操作采用内部锁synchronized。2.服务器角度,利用set 阅读全文
posted @ 2013-05-02 17:14 kkmm 阅读(723) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/redcreen/archive/2011/02/15/1955248.html使用memcache缓存数据,减少对数据库的直接访问,提高网站性能已经成了各大网站最基本的技术.如何更好的提高memcache缓存的利用率及命中次数会在后面的blog中单独介绍,本文主要探讨为何及如何使用本地缓存(java localcache)提高网站性能.localcache与memcache性能比较先来个本地缓存与memcache缓存的性能比较,有个直观上的概念Cache请求方式次数时间平均Localcachehashmap中get请求1亿1344ms0.0000 阅读全文
posted @ 2013-05-02 16:52 kkmm 阅读(358) 评论(0) 推荐(0) 编辑
摘要: Jedis使用总结前段时间细节的了解了Jedis的使用,Jedis是redis的java版本的客户端实现。本文做个总结,主要分享如下内容:【pipeline】【分布式的id生成器】【分布式锁【watch】【multi】】【redis分布式】好了,一个一个来。一、 Pipeline官方的说明是:starts a pipeline,which is a very efficient way to send lots of command and read all the responses when you finish sending them。简单点说pipeline适用于批处理。当有大量的操 阅读全文
posted @ 2013-05-02 13:03 kkmm 阅读(770) 评论(0) 推荐(0) 编辑
摘要: 活锁活锁(英文 livelock),指事物1可以使用资源,但它让其他事物先使用资源;事物2可以使用资源,但它也让其他事物先使用资源,于是两者一直谦让,都无法使用资源。所谓饥饿,是指如果事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待。T3也请求封锁R,当T1释放了R上的封锁后,系统首先批准了T3的请求,T2仍然等待。然后T4又请求封锁R,当T3释放了R上的封锁之后,系统又批准了T4的请求......T2可能永远等待,这就是饥饿。活锁有一定几率解开。而死锁(deadlock)是无法解开的。避免活锁的简单方法是采用先来先服务的策略。当多个事务请求封锁同一数据对象时,封锁子系统按请求封锁的先 阅读全文
posted @ 2013-05-02 09:21 kkmm 阅读(367) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 31 下一页