`
tubaluer
  • 浏览: 1445695 次
文章分类
社区版块
存档分类
最新评论
  • sblig: c / c++ 是不一样的都会输出 100
    j = j++

不同服务器的session访问

 
阅读更多

前段日子碰到一个问题。

起了一个应用服务器,两个web服务器,由于保存信息是,一半的信息在web服务器1上,另一半的信息在web服务器2上,web服务器1上调用了web服务器2上的页面,现在有web服务器1发起信息保存任务。于是问题就来了。

由于web服务器1上没法获取web服务器2上的session,起码网上找了半天,没有发现具有可行性的方案。

通过页面传递可序列化对象也不现实。因为信息太复杂,对象里面包含对象,页面传递没法对象包含对象(第二层以下的对象取出来后需要手工重新赋值才有效)。

经过1天时间的验证,最终采用这种得方法,应该web服务器1上嵌套了web服务器2上的页面,所以通过父页面访问子页面,通过子页面调用web服务器2上的方法,保存web服务器2上的session。web服务器1上起了一个定时器,等待web服务器2上保存完毕且正确后,web服务器1上再进行保存。

这种方法缺点就是没法起一个事务进行,幸好,我涉及的web服务器1上的数据比较简单,出错的概率也就只有万分之一。暂时能解燃煤之急。

当初拆分程序的时候太匆忙,没有时间静下来好好想想,要不也不会出这么大的纰漏。

各位看客如果有什么好的解决方法,也可以留言,交流交流。没法再一个事务中完成毕竟不是好方法。

分享到:
评论

相关推荐

    Springboot实现多服务器session共享

    主要为大家详细介绍了Springboot实现多服务器session共享,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    一个服务器搭多个tomcat导致session丢失,或者同一个IP不同端口,多个应用的session会冲突解决方法

    一个服务器上搭建了多个tomcat或者weblogic,端口不一样,同时启动访问时session丢失。如:A,B两个服务,在浏览器中登录访问A后,当前打开的浏览器上在开一个选项卡访问B服务后,回过来点击访问A时session丢失,...

    web服务器集群(多台web服务器)session同步、共享的3种解决方法

    所以本文就根据这种情况给出三种不同的方法来解决这个问题: 一、利用数据库同步session 在做多服务器session同步时我没有用这种方法,如果非要用这种方法的话,我想过二种方法: 1,用一个低端电脑建个数据库专门...

    NET的csharp的session丢失sessionid不一样

    NET的csharp的session丢失sessionid不一样 由于本地浏览器设置或者系统设置,导致sessionid无法准确上传到服务器

    nginx反向代理导致session失效的问题解决

    经了解,他对同一个项目使用tomcat部署了两个环境,一个在开发服务器上,一个在他本机,两个环境代码配置完全相同。两边通过同一个nginx进行反向代理,nginx配置大致如下, location /health/ { proxy_pass ...

    负载均衡3中session共享demo

    大量的并发访问或数据流量分担到多台节点设备上分别处理,减少...但是负载均衡有一个问题就是不同的服务器间进行session共享问题的处理;肯定不可能每分配到一个服务上让用户进行一次登录,这样的用户体验会是极差的;

    Cookie、Session、Token、JWT

    服务器在用户首次访问时为其创建一个唯一的会话标识符(Session ID),并将该标识符存储在服务器上。客户端在后续的请求中会将该 Session ID 作为 Cookie 发送给服务器。服务器使用 Session ID 来获取对应的用户信息...

    Session SQLServer 模式

    Session SQLServer 模式,实现应用程序跨服务器访问不会丢失Session,.net+SQL Server环境下测试运行良好

    六大对象Response,Request,Server,Application,Session,Cookie

    Response对象用语输出数据到客户端,包括向浏览器输出数据、重定向浏览器到另一个URL或向浏览器输出Cookie文件。 Request对象主要是让服务器取得...Session即会话,是指一个用户在一段时间内对某一个站点的一次访问。

    Zend Framework实现多服务器共享SESSION数据的方法

    本文实例讲述了Zend Framework实现多服务器...在客户端(如浏览器)登录网站时,被访问的 PHP 页面可以使用 session_start() 打开 SESSION,这样就会产生客户端的唯一标识 SESSION ID(此 ID 可通过函数 session_id

    tomcat cluster 集群 session复制

    为了简便配置,因此只使用一份Tomcat,使用不同的cofig来启动,配置好的文件在: http://618119.com/docs/Tomcat/TomcatCluster.zip 下载解压到Tomcat(例如D:\Java\apache-tomcat-6.0.14)目录里,运行对应的bat文件...

    单点登陆实现方案 服务器程序及子系统例子程序

    后运行,并用域名访问有效。 若需要增加子系统,按如下步骤: 1、写一个filter,继承AbstractCasTouchFilter filter中实现本系统的登陆操作和退出操作,login和logout方法 2、负责登陆的action或controller需要使用...

    memcached实现session远程分布式存储

    为了使web应用能使用saas模式的大规模访问,必须实现应用的集群部署.要实现集群部署主要需要实现session共享机制,使得多台应用服务器之间会话统一, tomcat等多数服务都采用了session复制技术实现session的共享

    ASP.NET中在不同的子域中共享Session的具体方法

    Session在服务器是以散列表形式存在的,我们都知道Session是会话级的,每个用户访问都会生成一个Session。那么服务器是怎么区分不同用户的Session?又是怎么将不同用户的Session与不同的用户绑定的呢?下面我们来...

    PHP 实现多服务器共享 SESSION 数据

    各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接口对用户数据进行访问即可。但还存在一个问题,就是用户在这个服务器登录之后,进入另一个服务器的别的模块时,仍然...

    无session无cookie随机验证码控件

    (1)使用session,当用户很多时,服务器负荷验证增加,(2)客户端会反复出现验证不正确的现象 使用cookie,保存在客户端又不安全 为此,本人开发一高性能的无session无cookie随机验证码自定义控件,支持渐变色,支持...

    Tomcat8-Redis3-Session共享实际使用版本,生产可用

    start.bat,直接访问http://localhost:8081/test ---http://localhost:8082/test----可直接发现session 相同,具体session有效期以server中默认30分钟,设置后在redis -->pttl key 查看session有效期.返回为毫秒数

    PHP保存session到memcache服务器的方法

    但是,如果网站用户很多的话,session 的访问将势必影响网站的速度。因为文件的读取速度是很低的。 众所周知,memcache 作为内存缓存服务器,通过哈希算法,把数据以key->value的形式进行读取,其速度是远远高于文件...

    python中requests模拟登录的三种方式(携带cookie/session进行请求网站)

    cookie在客户的浏览器上,session存在服务器上 cookie是不安全的,且有失效时间 session是在cookie的基础上,服务端设置session时会向浏览器发送设置一个设置cookie的请求,这个cookie包括session的id当访问服务端时...

    用PHP实现多服务器共享SESSION数据的方法

    各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接口对用户数据进行访问即可。但还存在一个问题,就是用户在这个服务器登录之后,进入另一个服务器的别的模块时,仍然...

Global site tag (gtag.js) - Google Analytics