Wesley13 Wesley13
3年前
SSH实现动态数据源切换,事务场景下使用AOP
上周写代码遇到了切换数据源的问题,在同一个方法中向两个不同数据源做一些操作,但是这个方法使用了事务,所以网上一般动态切换数据源的方法就失效了。框架是spirngmvchibernate,数据库是oracle,连接池druid。一般情况下,操作数据都是在DAO层进行处理。一种办法是使用多个DataSource然后创建多个SessionFa
Stella981 Stella981
3年前
OpenVPN设置客户端固定IP
在使用openvpn的过程中,多台客户端连接上同一台openvpn服务器之后,客户端的的IP地扯经常变动,导致客户端之间无法正常通讯,openvpn的版本变动也导致了固定IP地扯的配置不同,用以下方法设置,客户端不管再怎么连接ip地扯都不会改变了,此文使用的openvpn的版本为2.3.13。第一种配置格式:
Stella981 Stella981
3年前
Hadoop+Spark分布式集群环境搭建
  Hadoop是一个能够让用户轻松架构和使用的分布式计算平台,而Spark是一个新兴的大数据处理通用引擎,提供了分布式的内存抽象。下面使用在同一个局域网下的两台电脑搭建分布式计算的环境:  其中JDK、Hadoop、Spark都已经在两台电脑上安装好。  一台Ubuntu主机系统Master,IP地址假设为:192.168.1.101(i
Easter79 Easter79
3年前
Tomcat7源码分析(二)类加载体系
一、总体分析  主流的JavaWeb服务器,如Tomcat、Jetty、WebLogic、WebSphere等都实现了自己定义的类加载器(一般都不止一个)。因为一个功能健全的Web服务器,需要解决如下的几个问题:1.部署在同一个服务器上的两个Web应用程序使用的Java类库可以实现相互隔离,这是最基本的要求.两个不同应用程序
Stella981 Stella981
3年前
Linux 多线程编程
1.Linux“线程”进程与线程之间是有区别的,不过Linux内核只提供了轻量进程的支持,未实现线程模型。Linux是一种“多进程单线程”的操作系统。Linux本身只有进程的概念,而其所谓的“线程”本质上在内核里仍然是进程。大家知道,进程是资源分配的单位,同一进程中的多个线程共享该进程的资源(如作为共享内存的全局变量)。Linux
Stella981 Stella981
3年前
Delphi中调用API函数经验点滴(三)
三、防止多次载入应用程序实例  某些应用程序需要禁止用户载入多次实例。比如,控制面板中的应用程序,不管用户打开多少次,同一应用程序只有一个实例,而且每一次试图重复打开都会自动激活已经存在的实例。  WindowsAPI提供了函数FindWindow,可以是应用程序在启动时检查自己是否已经存在。  该函数在Delphi中的语法
Stella981 Stella981
3年前
PHP如何避免高并发下insert into 重复入库
场景:用户签到/分享功能,每天只能签到一次或分享一次数据库:id  user\_id  add\_time  逻辑分析:用户每天进行分享或签到,得到积分,数据库通过以上字段进行记录,同一时间不可插入多条,一天只能有一条记录,插入前判断是否当天已插入过问题点:用户连点、并发请求等会导致同时插入多条记录,导致积分异常解决方案:使用文件锁,经过
Wesley13 Wesley13
3年前
Spring方法注入
在spring中注入方式有3中:1,构造函数注入2,set方法注入3,接口注入(方法注入)在spring中的bean默认范围都是单例,但是在特定的情况下,我们需要有如下的业务需要,单例bean1需要依赖非单例bean2,由于bean1始终是单例,所以如果不做出改变,每次获取的bean2也是同一个,容器就没办法给我们提供
爬虫中使用代理IP的一些误区
做为爬虫工作者在日常工作中使用爬虫多次爬取同一网站时,经常会被网站的IP反爬虫机制给禁掉,为了解决封禁IP的问题通常会使用代理IP。但也有一部分人在HTTP代理IP的使用上存在着误解,他们认为使用了代理IP就能解决一切问题,然而实际上代理IP不是万
营销权益平台春晚技术探究| 京东云技术团队
一、引言在当前快速发展的互联网环境中,许多企业和服务都面临着高并发场景的挑战。随着用户规模不断增长,对于同一时间内大量用户请求的处理能力、系统性能、稳定性和容错性的要求也日益提高。高并发场景对系统架构设计、数据库设计、缓存策略、自动化运维、安全防护、成本、