摘要:
之前很傻很天真地以为无非就是逐个计算距离,然后比较出来就行了,然后当碰到访问用户很多,而且数据库中经纬度信息很多的时候,计算量的迅速增长,能让服务器完全傻逼掉,还是老前辈的经验比我们丰富,给了我很大的启示。MySQL性能调优 – 使用更为快速的算法进行距离计算最近遇到了一个问题,通过不断的尝试最终将... 阅读全文
摘要:
/* * 地图上半径内的经纬度 * @param lat 纬度 lon 经度 raidus 单位米 */ function getAround($lat,$lon,$raidus){ $raidus = empty($raidus)?3000:$r... 阅读全文
摘要:
<?phpclass WaterImage extends Think {//类定义开始 private $font='./Public/fonts/msyh.ttf'; private $font_alpha='80'; private $title_option=array('literal'=>'默认标题水印文字','color'=>'#000000','pos_x'=>100,'pos_y'=>200,'size' 阅读全文
摘要:
我们网站要用到即时通讯,选择了OPENFIRE 当做服务器。 OPENFIRE实现了XMPP部分协议。通过发送xml标签进行和服务器的交互。 前端采用的是strophe 。开发过程中,发现假如新开一个页面,会把其他页面的session顶掉,需要在openfire添加一条系统属性route.all-resources true这样其他页面既不会掉线,也实现了消息的分发同步。缺点是比较消耗服务器资源,新开一个页面就发起一个新连接,其他解决方案也试过,不能解决这个问题,strophe的attach方法不实用。 开发过程中,刚开始我把所有逻辑都写在前端的,聊天室创建和加入,PubSub节点的... 阅读全文
摘要:
前几天做到消息提醒,发现我们网站的消息是倒序排列的,和百度贴吧这种根据时间的顺序排列不一样。这样在消息提醒链接里面就不能提前知道此条回复是在第几页的,今天在第一页,明天可能就在第二页了。我想了一下,通过此条回复在该帖子中处于第几条来解决。比如,当前回复的是第30条(第一条开始),当前条ID是650,那么url这样可以这样1.http://www.bigparty.com/home.php/group-space_show-id-103-picid-pn-30-333#650由于我们网站的回复加载是ajax的,所以第一步请求这个页面后,前端再次发起ajax 请求http://www.bigpar 阅读全文
摘要:
最近面试老问道任务调度精确到秒,想了半天没印象。网上搜了一下* * * * * sleep 20; /bin/date >>/tmp/date.txt加个sleep 20;貌似能解决,改天开虚拟机试试。 阅读全文
摘要:
http://www.cnblogs.com/god_bless_you/archive/2010/06/11/1756019.htmlAdapter(别名Wrapper)模式:将一个类的接口,转换成客户期望的另一个类的接口。适配器让原本接口不兼容的类可以合作无间。要点:1. 适配器模式主要应用于“希望复用一些现存的类,但是接口又与复用环境要求不一致的情况”,在遗留代码复用、类库迁移等方面非常有用。2. 适配器模式有对象适配器和类适配器两种形式的实现结构,但是类适配器采用“多继承”的实现方式,带来了不良的高耦合,所以一般不推荐使用。对象适配器采用“对象组合”的方式,更符合松耦合精神。实现:类的 阅读全文
摘要:
来源:http://lvxingzhelimin.blog.163.com/blog/static/170716550201110852956542/工厂模式分为三种:简单工厂、工厂模式和抽象工厂模式。三者之间存在哪些异同呢?先分别看看各个模式的特点一、简单工厂模式:实现了算法和界面的分离,也就是将业务逻辑和界面逻辑分开了,降低了耦合度。算法的封装:定义一个抽象的算法接口,提供不同算法的公共接口方法。其他具体算法继承这个抽象类,并实现具体的算法。简单工厂类:作为一个独立的类,实现了针对不同的算法进行实例化。简单工厂的UML图:二、工厂模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。 阅读全文
摘要:
来源:http://www.iteye.com/topic/979557总结完ubuntu之后,接着整uml的东西。上一篇我们介绍了用例图和用例间的关系。我们现在再来说说uml中类图和类的关系。在画类图的时候,理清类和类之间的关系是重点。类的关系有泛化(Generalization)、实现(Realization)、依赖(Dependency)和关联(Association)。其中关联又分为一般关联关系和聚合关系(Aggregation),合成关系(Composition)。下面我们结合实例理解这些关系。基本概念类图(Class Diagram):类图是面向对象系统建模中最常用和最重要的图,是 阅读全文
摘要:
1.工厂模式主要作用是降低耦合度。abstract class Operation{ abstract public function getValue($num1,$num2); public function getAttr(){ return 1; }}class Add extends Operation{ public function getValue($num1, $num2){ return $num1+$num2; }}class Sub extends Operation{ public f... 阅读全文