仓酷云

标题: PHP教程之多Web办事器之间同享Session的处理计划... [打印本页]

作者: 变相怪杰    时间: 2015-2-3 23:57
标题: PHP教程之多Web办事器之间同享Session的处理计划...
参加PHP开发学习,或许只是一次偶然的想法吧!只是想在走向社会之前体验、学习在一个公司或者说是项目团队之中如何去更有效的沟通、交流、共同合作,还有就是为毕业实习找工作增加伐码。     良多开辟中触及到用户的Session验证很保存的成绩,这个成绩对照成心思,总结了几种计划,只供参考。

  [  成绩提出 ]
  为了知足足够大的使用,知足更多的客户,因而咱们架设了N台Web办事器(N>=2),在多台Web办事器的情形下,咱们会触及到一个成绩:用户上岸一台办事器今后,假如在逾越到另外一台办事器的时分可以持续利用客户的Session?
  (以下描写计划只是针对Linux/Unix + Apache + Mysql + PHP的开辟架构,固然,也能够扩大到其他平台。)

  [  成绩处理计划 ]
  既然咱们的成绩已摆在眼前了,那末就要从手艺角度去处理成绩,给咱们的客户更好的体验,总结了几个计划。
  1. 写客户端Cookie的体例
  当用户上岸胜利今后,把网站域名、用户名、暗码、token、session无效工夫全体采取cookie的模式写入到客户真个cookie外面,假如用户从一台Web办事器逾越到另外一台办事器的时分,咱们的法式自动去检测客户真个cookie信息,停止判别,然后供应对应的办事,固然,假如cookie过时,或有效,天然就不让用户持续办事了。固然,这类办法的坏处就不问可知了,好比客户端禁用了cookie或cookie被黑客盗取了呢?
  2. 办事器之间Session数据同步的体例
  假定Web办事器A是一切用户上岸的办事器,那末当用户验证上岸一下,session数据就会写到A办事器里,那末就能够本人写剧本或守护历程来主动把session数据同步到其他Web办事器,那末当用户跳转到其他办事器的时分,那末session数据是分歧的,天然就可以够直接停止办事不必再次上岸了。弱点是,能够会速度慢,不不乱,假如是单向同步的话,上岸办事器呈现成绩,那末其他办事器也没法办事,固然也能够思索双向同步的成绩。
  3. 使用NFS同享Session数据的体例
  其实这个计划和上面的Mysql计划相似,只是存储体例纷歧样。大致就是有一台公共的NFS办事器(Network File Server)做同享办事器,一切的Web办事器上岸的时分把session数据写到这台办事器上,那末一切的session数据其实都是保留在这台NFS办事器上的,不管用户会见那太Web办事器,都要来这台办事器获得session数据,那末就可以够完成同享session数据了。弱点是依附性太强,假如NFS办事器down失落了,那末人人都没法任务了,固然,可以思索多台NFS办事器同步的模式。
(关于NFS的经典文章:http://linux.vbird.org/linux_server/0330nfs.php)

  4. 使用Mysql数据库同享Session数据的体例
  这个体例与NFS的体例相似,也是采取一台Mysql办事器做同享办事器,把一切的session的数据保留到Mysql办事器上,一切Web办事器都来这台Mysql办事器来获得Session数据。弱点也是依附性太强,Mysql没法任务了影响一切的Web办事器,固然,可以思索多太Mysql数据库来同享session,利用同步Mysql数据的体例。
  (Mysql同步我写过文章:http://blog.csdn.net/heiyeshuwu/archive/2005/10/31/520007.aspx)
  5. 利用硬件装备
  这个算是对照成熟的处理计划了,利用相似BIG-IP的负载装备来完成资本同享,那末就可以够又不乱又公道的的同享Session了。今朝良多门户网站采取这类体例。弱点很分明了,就是要免费了,硬件装备一定需求购置本钱的,不外关于专业或大型使用来说,是对照公道而且值得的。
(关于BIG-IP装备:http://www.f5.com.cn/channel.php?channel=product&type=BIG-IP-%D3%A6%D3%C3%C1%F7%C1%BF%B9%DC%C0%ED&id=36)
  以上这些只是我的团体鄙意,没有经由实验,不包管其正确其实性,只是供应一种设法和参考。
当然你可以把你最基本的功能放出来的时候就放出来,比如放到论坛上,让大家都参与,
作者: 精灵巫婆    时间: 2015-2-4 07:23
兴趣是最好的老师,百度是最好的词典。
作者: 金色的骷髅    时间: 2015-2-9 18:46
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
作者: 飘灵儿    时间: 2015-2-10 21:47
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
作者: 愤怒的大鸟    时间: 2015-3-1 14:55
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者: 乐观    时间: 2015-3-7 11:58
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
作者: 灵魂腐蚀    时间: 2015-3-13 01:09
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
作者: 简单生活    时间: 2015-3-19 14:20
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
作者: 因胸联盟    时间: 2015-3-19 18:15
爱上php,他也会爱上你。
作者: 活着的死人    时间: 2015-3-30 11:53
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
作者: 若相依    时间: 2015-4-2 23:26
当然这种网站的会员费就几十块钱。
作者: 深爱那片海    时间: 2015-4-6 23:11
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者: 再见西城    时间: 2015-4-13 01:00
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
作者: 谁可相欹    时间: 2015-4-15 06:41
写的比较杂,因为我也是个新手,不当至于大家多多指正。
作者: 山那边是海    时间: 2015-4-16 07:11
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
作者: 爱飞    时间: 2015-4-27 05:08
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
作者: 老尸    时间: 2015-5-1 10:11
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
作者: 海妖    时间: 2015-5-8 17:51
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 只想知道    时间: 2015-5-8 19:11
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2