- 博客(75)
- 资源 (4)
- 收藏
- 关注
原创 以架构师的思路和视野理解 MySQL的索引、锁、事务、分库、分表
很多人写了多年业务代码,但对 MySQL 没有太多深层次的认识,只停留在 CRUD 层次,能满足业务逻辑就万事大吉。然后MYSQL并不只是懂“增删改查”、表关联就万事大吉了。千万条数据,走索引还是慢,怎么解决?千万级数据,分库分表怎么做?主从延迟怎么解决?业务规模小的时候岁月静好,一旦业务量快速增长,就会面临很多棘手问题:大规模数据导入会导致 MySQL 读性能大幅降低,甚至还有锁表情况;MySQL 在大查询方面性能很差,盲目限制会导致用户体验变差;MySQL 对数据量
2021-07-08 12:04:17
261
2
原创 http缓存详解,http缓存推荐方案
前言通过本文,你将了解到http缓存机制是怎样的,no-cache到底有没有缓存,地址栏回车,F5,ctrl+F5的区别,以及当下较为推荐的缓存方案等。自从和前端组的同事一起整了个前端扫盲计划,想着给他们讲点什么,花了一周时间整理了http缓存的知识,花了一个多小时也算帮同事们重新理了理这玩意。本文借用了部分优秀文章的思路,这里就当一个整理分享了。那么我们开始~说明阅读前提:http缓存主要针如css,js,图片等更新频率不大的静态文件。首先得先明确这个概念,不然以下的概念以及例子,
2021-03-12 11:42:37
1228
1
原创 软路由WIFI的方案,pcie网卡和硬件无线AP那种最稳定靠谱?
我们使用的普通路由器,一般都包含了 路由功能和wifi无线功能,那么意味着我们只需要把无线路由器连接外网,然后内部就可以通过一个设备搞定。但是目前的软路由使用中,软路由主要突出在他的处理能力上,主要负责的是路由和NAT转发方面的处理,而无线功能则是没有的。为什么软路由没有无线呢?答案也很简单,因为软路由天生就不是路由,而是被折腾出来的, 所以在硬件上面,本身就不具备无线的硬件。试想一下,巧妇难为无米之炊,没有WIFI的硬件芯片,又怎么能发射出来无线信号呢?普通家用路由器都是把CPU主芯片,RAM
2021-02-03 13:07:53
16737
原创 端口汇聚实现多端口带宽叠加
二层网管交换机应用——端口汇聚实现多端口带宽叠加端口汇聚功能是将交换机的多个物理端口汇聚在一起形成一个逻辑上的物理端口,同一汇聚组内的多条链路则可视为一条逻辑链路。端口汇聚可以实现用多条链路汇聚成一条逻辑链路增加带宽;同时,同一汇聚组的各个成员端口之间彼此动态备份,提高连接可靠性。端口汇聚功能比较适合于以下情况的具体应用:1、端口汇聚功能用于交换机与服务器之间的相联,为服务器提供独享的高带宽。2、端口汇聚功能用于交换机之间的级联,为交换机之间的数据交换提供高带宽的数据传输能...
2020-09-09 15:21:36
5145
转载 OAuth2.0协议的机制理解
OAuth2.0协议主要是用access_token代替密码. 授权服务器保管用户密码并向第三方应用发放access_token,第三方应用接触不到用户 的密码. 资源服务器保管需要授权才能访问的资源(其实就是服务器提供的API),第三方应用凭 access_token访问资源服务器.(资源服务器还要问一下授权服务器这个access_token是 不是真的) 授权服
2015-02-06 10:58:37
607
转载 SQL语句的优化
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.
2012-09-19 11:31:22
1179
原创 Sharding来说,主要有以下主要的优点
对于Sharding来说,主要有以下主要的优点:(1)提高了数据库的可扩展性,可以随着应用的增长来增加更多的服务器,只需要将新增加的数据以及负载放到新加的服务器上就可以。(2)提高了数据库的可用性。其中几个shard服务器down掉之后,并不会使整个系统对外停止服务,而只会影响到需要访问这几个shard服务器上的数据的用户。(3)小的数据库的查询压力比较小,查询
2012-09-18 17:03:13
1671
转载 我为什么需要你来参与这样的一个创意计划?”我自己可以完成它…
今天我收到一封邮件:Myles, 你好上周末我和XXX闲聊时,他告诉我你是一个编程高手,而且在接下来的几个月里你将要休假在家。我下周将会辞职,去专心投入我的一个创业计划[... 他想要开发的应用的描述...]。我没有一点编程经验,我正在寻找一个程序员和我一起完成这个项目。如果你对开发这个应用感兴趣——或你知道有人对做这样 的应用感兴趣——请告诉我。你可以直接打我的电话:(***
2012-09-18 09:10:18
1036
转载 网页命名规则
CSS命名规则 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:left right center 登录条:loginbar 标志:logo 广告:banner 页面主体:main 热点:
2012-09-11 09:41:28
14362
转载 新一代数据库的五大标准
新一代数据库的五大标准1、 MPP — 大规模的并行处理能力。新一代的数据库必须提供大规模的并行处理能力,实现不同机器上同时摄入、处理或者查询等操作。性能必须远甚于只在单台机器上运行,有着数据摄入瓶颈的传统数据库。 2、 无共享架构: 无共享(内存或磁盘等)架构就意味着新一代数据库系统将无懈可击!每个节点工作都是独立的,这样即使其中一台机器出故障,其他机器仍然可以保持继续运行。这在MP
2012-09-10 11:35:52
1105
转载 仰观Java时代淘宝
2012年4月的淘宝相关数据:80多个CDN分布节点最大的Hadoop分布式集群,每日新增50TB数据,有40PB海量数据淘宝网光棍节当天网络的流量最高达800GbpsTB经历了一个主动和被动的技术变革的过程,不管我们是否需要认可“变化”。典型的个人网站DP网的发展史走过时曾相似的道路三个开发工程师(虚竹、三丰、多隆)、一个UED(二当家)、三个运营(小宝、阿珂、破天)、一
2012-09-03 14:29:47
1132
转载 Memcached与Redis的一些特点
在使用Redis过程中,我们发现了不少Redis不同于Memcached,也不同于MySQL的特征。1. SchemaMySQL: 需事先设计Memcached: 无需设计Redis: 小型系统可以不用,但是如果要合理的规划及使用Redis,需要事先进行类似如下一些规划?数据项: value保存的内容是什么,如用户资料?Redis数据类型: 如String, List?
2012-08-29 15:28:36
2312
原创 神奇的网站安全狗,我的网站守护神!
我的网站一天一天的发展,流量不断的壮大,但随之而来的安全问题也是层出不穷,各种木马病毒日益猖獗,挂马网站的数量也增长迅速,原本服务器的安全软件科摩多,早就已经不堪重用。我不断在搜索更好的网站WIN+IIS的防御软件,国外的、国内的搜索了好久,不断试用,代价是严重的,网站最多因为木马问题停过两天,最终锁定了网站安全狗,国内首款支持Windows全系列操作系统,第一眼就是看中了安全狗的界面,一看就是知
2012-03-22 15:37:46
1370
转载 网站的缓存机制的选择和应用
很多人都在问,想某某网站这样高访问量的网站,非生成静态页面,能承受这么大的访问量吗?他是怎么做到的?!其实在这里面,缓存扮演着很重要的角色。 为什么需要缓存?缓存的性能?? 缓存的最根本的目的是为了提高网站性能,减轻频繁访问数据而給数据库带来的压力。再进一步,合理的缓存了某种数据形式,还会减轻程序运算时,对CPU带来的压力。首先,我们要知道一个最基本的效率规则,操作内存中的数据比操作存
2012-03-17 14:21:46
705
原创 云计算到底是什么
云计算 英译:cloud;cloud computing;cloud computer;cloud-based。 “云计算”概念由Google提出,一如其名,这是一个美丽的网络应用模式。 狭义云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源
2011-07-11 10:46:34
954
原创 mysql分区表
相信有很多人经常会问同样的一个问题:当 MySQL的总记录数超过了100万后,会出现性能的大幅度下降吗?答案是肯定的,但是性能下 降>的比率不一而同,要看系统的架构、应用程序、还有>包括索引、服务器硬件等多种因素而定。当有网友问我这个问题的时候,我最常见的回
2011-07-05 10:04:18
2484
原创 PHP开发Android应用程序
最全的PHP开发Android应用程序http://www.iamlintao.com/?p=744Android,看过这篇文章后,收益颇多,但安装过程中的细节有很多出入。接下来一一列举出来!首先看第二部分:配置开发环境,由于我下载的是这个版本的SDK(android-sdk_r08-windows.zip),下载完成后解压即可。主要是安装Android开发插件的配置顺序有些不一样,不
2011-06-27 15:50:00
2752
原创 鄙视垃圾接口开发者,给人造成不便!建议增加黑名单!把搞垃圾接口的人都添进去,让他们永垂不朽去吧!
<br />鄙视垃圾接口开发者,给人造成不便!建议增加黑名单!把搞垃圾接口的人都添进去,让他们永垂不朽去吧!
2011-03-14 18:06:00
1078
原创 MySQL 当记录不存在时插入(insert if not exists、dual )
在 MySQL 中,插入(insert)一条记录很简单,但是一些特殊应用,在插入记录前,需要检查这条记录是否已经存在,只有当记录不存在时才执行插入操作,本文介绍的就是这个问题的解决方案。问题:我创建了一个表来存放客户信息,我知道可以用 insert 语句插入信息到表中,但是怎么样才能保证不会插入重复的记录呢?答案:可以通过使用 EXISTS 条件句防止插入重复记录。示例一:插入多条记录假设有一个主键为 client_id 的 clients 表,可以使用下面的语句:INSERT INTO clients
2011-03-02 10:24:00
11922
原创 php 数组的排序问题
php 数组的排序问题函数sort 对数组单元进行升序排序,将删除数组的原有键名,赋予新的键名rsort 对数组单元进行降序排序,将删除数组的原有键名,赋予新的键名<br />asort 对数组进行升序排序 ,保持关联关系arsort 对数组进行降序排序,保持关联关系<br />ksort 对数组按照键值升序排序,保留键名到数据的关联krsort 对数组按照键值降序排序,保留键名到数据的关联uasort 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联 例如$array=array(
2010-12-13 11:22:00
664
原创 EclipsePHP Studio 3.0 简体中文版 EPP3 发布
<br />EclipsePHP Studio 简称 “EPP ”,EPP 使用的 Eclipse 核心编译而来。针对PHP开发者提供的一个优秀的大型IDE开发软件。并且集成了JDK和简体中文系统,免除处了安装配置的麻烦,一次安装即可使用无需配置。此编译器为PHP编译器,专门针对辅助PHP代码的开发和调试,集成了代码高亮,函数跟踪,时时纠错等功能。同时还增加了协作开发版本服务器功能: SVN , CVS 。<br /> <br />特点介绍:<br />1、方便PHP面向对象开发,有类集成跟踪功能。<br
2010-11-23 15:31:00
2852
原创 PHP webService 技术一(使用XML-RPC)
12月26日PHP webService 技术一(使用XML-RPC)[ Web Service介绍 ]Web Service就是为了异构系统的通信而产生的,它基本的思想就是使用基于XML的HTTP的远程调用提供一种标准的机制,而省去建立一种新协议的需求。目前进行Web Service通信有两种协议标准,一种是XML-RPC,另外一种是SOAP。XML-RPC比较简单,出现时间比较早,SOAP比较复杂,主要是一些需要稳定、健壮、安全并且复杂交互的时候使用。PHP中集成了XML-RPC和SOAP两种协议的
2010-09-20 16:26:00
4094
原创 MySQL 操作日志查看的实际操作步骤与代码
<br />以下的文章主要介绍的是MySQL操作日志查看的实际操作步骤以及对其实际操作步骤的具体描述,假如你在实际操作中遇到相似的情况,但是你却不知道对其如何正确的解决,那么以下的文章对你而言一定是良师益友。<br />刚接触MySQL不久,发现缺少比较多企业级的功能,想实时查看MySQL所执行的sql语句,类似mssql里的事件探查器,上网找了一下,只能将执行操作写到日志里,做法如下:<br />对my.ini文件进行设置,我的MySQL安装环境是xp sp2,该文件在c:/windows/..下,打开文
2010-09-15 18:59:00
961
原创 mysql数据据存储引擎InnoDB和MyISAM的优势及区别
MyISAM:这个是默认类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法.与其他存储引擎比较,MyISAM具有检查和修复表格的大多数工具. MyISAM表格可以被压缩,而且它们支持全文搜索.它们不是事务安全的,而且也不支持外键。如果事物回滚将造成不完全回滚,不具有原子性。如果执行大量的SELECT,MyISAM是更好的选择。 InnoDB:这种类型是事务安全的.它与BDB类型具有相同
2010-09-15 18:46:00
587
原创 PHP_SELF 应用初步
<br />php_self是php的内置变量,记作$php_self,其作用是实现“页内跳转”。这里的页内跳转不同等于html的书签之类的跳转,而是php程序通过URL的尾参数的改变在同一个程序里提供不同的Web内容。试比较以下两个URL:<br />http://www.zzstep.com/index.php<br />http://www.zzstep.com/index.php?page=2<br />以上两个URL,其区别是第二个URL地址多一个参数(?page=2),我们在实际打开它们时,在浏
2010-09-15 18:20:00
611
原创 PHP网站优化的6个基础方法
<br />1、使用GZip <br /> 在每一个PHP页面顶部加入以下代码:<br /><?php ob_start("ob_gzhandler");?><br /> 使用该代码后服务器会压缩所有需要传送到客户端的代码,并在浏览器中进行解压,从而使网站运行速度加快。这一功能还可以节省网站空间的流量。<br />2、不要滥用Javascript和Ajax <br /> 只在需要的时候才使用Javascript和Ajax,千万不要滥用它们。有些网站使用了太多不必要的Ajax动画,或使用Ajax来加载无
2010-09-15 18:16:00
715
原创 dirname(__file__)函数 返回网站根目录
dirname(__FILE__) 就是取得当前文件所在的目录echo dirname(__FILE__);---->>>D:/Program Files/Apache Software/Apache2.2/htdocs/php如:include(dirname(__FILE__).'/index.html');
2010-09-10 11:39:00
9792
转载 mysql中INSTR函数的用法
mysql中INSTR函数的用法INSTR(字段名, 字符串)这个函数返回字符串在某一个字段的内容中的位置, 没有找到字符串返回0,否则返回位置(从1开始)SELECT * FROM tblTopic ORDER BY INSTR( topicTitle, ha ) > 0 DESCSELECT INSTR( topicTitle, ha ) FROM
2010-05-18 11:56:00
96415
1
原创 揭秘微软究竟如何为Windows改进PHP?
http://www.sina.com.cn 2009年09月07日 16:35 IT168.com<!-- -->文本Tag: PHP windows 7 【IT168 专稿】微软示爱开源社区已经不是一件新鲜事,最近的一个证明是,微软正在努力让PHP可以更好的运行在Windows上,微软开源社区主管Garrett Serack最近接受了媒体采访,谈论了微软为实现这一目标所做
2010-01-18 10:48:00
968
原创 PHP优化技巧一例
测试数据: 有一个数组 , 一共3万条数据, 1MB大小, 我分成2种方法放数据来测试//sexinsex 1. array.php 直接新建个空[url=file::;]php[/url]文件, 把数组放进去 2. array.txt 把数组serialize后保存 测试程序: 复制内容到剪贴板 代码:for ($i=0 ;$i require(dirname(__FILE__
2010-01-18 10:30:00
4814
原创 搜索引擎根据原Sphider的脚本修正后的 Sphider-plus 2.2
搜索引擎根据原Sphider的脚本修正后的 Sphider-plus 2.2 http://www.sphider-plus.eu/ Sphider是一个轻量级的网络搜索引擎蜘蛛和PHP编写的,以它的后端数据库软件MySQL。 这是一个搜索功能添加到您的网站或建立您自定义搜索引擎很好的工具。 Sphider小巧,易于安装和修改,并在世界各地数以千计的网站上使用。
2010-01-12 11:18:00
2082
转载 程序员必须知道的英语!
Conference:讨论会,碰头会议的意思 例如,有时候领导会说“咱们Call一个Conference吧”,这个的意思应该是一个电话会议,或者视频会议。 Follow:跟踪 例如,一般会说那个Case你follow一下吧,这就是说让你跟踪一下这个事情。 Team: 是团队的意思,团队的主管一般叫Team Leader,一个Team可以大也可以小,一个项目小组可
2009-12-29 11:19:00
664
原创 php定时计划任务实现方法
我在uchome 中 分析到, uchome是这样做的 1. 把所有的计划任务存放到数据库 2. 每次用户进行操作或打开页面的时候都按排序执行一条计划任务. 也就是轮番判断,时间到了的, 就在用户进程中执行.uchome的计划任务代码在 ./source/function_cron.php上面只自己分析uchome代码关于计划任务大概的结果, 抛砖引玉. 希望谁有好的方
2009-09-21 12:21:00
4167
原创 PHP中str_replace函数的详解
在实际的程序开发中,执行字符串替换操作是一件非常经常的事,对str_replace函数的实用也会非常频繁。 这段时间在看《PHP和MySQL Web开发》一书看到str_replace讲解,一段小提示写到:可以为str_replace的三个都使用数组传入,但讲解比较简单,于是决定自己的试验一下该函数在各个参数传入数组时的执行结果。 函数原型:mixed str_rep
2009-09-21 11:38:00
620
原创 PHP的cURL库简单和有效地去抓网页
使用PHP的cURL库可以简单和有效地去抓网页。你只需要运行一个脚本,然后分析一下你所抓取的网页,然后就可以以程序的方式得到你想要的数据了。无论是你想从从一个链接上取部分数据,或是取一个XML文件并把其导入数据库,那怕就是简单的获取网页内容,cURL 是一个功能强大的PHP库。PHP中的CURL函数库(Client URL Library Funct
2009-09-07 12:09:00
1159
原创 Linux+Apache+Mysql+PHP优化技巧
LAMP这个词的由来最早始于德国杂志“ct Magazine”,Michael Kunze在1990年最先把这些项目组合在一起创造了LAMP的缩写字。这些组件虽然并不是开开始就设计为一起使用的,但是,这些开源软件都可以很方便的随时获得并免费获得。这就导致了这些组件经常在一起使用。在过去的几年里,这些组件的兼容性不断完善,在一起的应用情形变得非常普便。为了改善不同组件之间的协作,已经创
2009-09-06 17:16:00
626
原创 PHP速率优化技巧
1.在可以用file_get_contents替代file、fopen、feof、fgets等系列方法的情况下,尽量用file_get_contents,因为他的效率高得多!但是要注意file_get_contents在打开一个URL文件时候的PHP版本问题; 2.尽量的少进行文件操作,虽然PHP的文件操作效率也不低的;3.优化SELECT SQL语句,在可能的情况下尽量少的进行INSERT、UP
2009-09-06 17:15:00
446
原创 一些心得
1、 使用float:left 来控制列数,如果box的总宽度除列数的百分比,有小数哪么在ie下就会自动换行(解决方法:box的宽度除列数的百分比 要为整数) 2、 不让链接折行a {white-space:nowrap; } 3、 删除链接上的虚线框a:active, a:focus { outline:none;
2009-09-06 16:21:00
451
原创 Sphinx全文检索
1. Sphinx简介1.1. 什么是全文检索全文检索是指以文档的全部文本信息作为检索对象的一种信息检索技术。检索的对象有可能是文章的标题,也有可能是文章的作者,也有可能是文章摘要或内容。1.2. 介绍Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索
2009-08-28 12:03:00
692
原创 MySQL左连接、右连接和内连接详解
以MySql为例。在MySQL数据库中建立两张数据表,并分别插入一些数据。示例脚本如下: drop table table1; CREATE TABLE `andrew`.`table1` ( `name` VARCHAR(32) NOT NULL, `city` VARCHAR(32) NOT NULL ) ENGINE = MyISAM; insert in
2009-08-13 11:36:00
966
JSP在线考试系统2.1.0
2018-03-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人