为您找到搜索结果:1685个
Windows环境配置Apache+Mysql+PHP
一、安装配置Apache2.4.7(httpd-2.4.7-win64-VC11.zip ) 1、解压下载的安装包:httpd-2.4.7-win64-VC11.zip将其放到自己的安装目录(我的目录D:phpEnvApache24)22、然后对http.conf(D:phpEnvApache24confhttp.conf)配置文件进行修改-使用记事本打开就行 (1)修改ServerRootApache的根路径: (37行)ServerRoot"c:/Apache24"改成=>ServerRoot"D:/phpEnv/Apache24" (2)修改ServerName你的主机名称: (217行)ServerNamewww.example.com:80将前面的#去掉,该属性在...
Apache中commons包的jar功能分类说明
commons-beanutils.jar(1.1)主要提供Bean的用法commons-codec-1.3.jar(1.3) 主要包括核心的算法(Md5等)commons-collections-3.2.1.jar(3.2.1)各种集合类和集合工具类的封装commons-dbcp-1.2.2.jar(1.2.2)配置数据库用到的工具,如datasourcecommons-dbutils-1.2.jar(1.2)是操作数据库的组件,对传统操作数据库的类进行二次封装,可以把结果集转化成Listcommons-fileupload-1.2.1.jar(1.2.1)文件上传时候的组件commons-httpclient-3.0.1.jar(3.0.1)http相关操作,如HttpURLConnection的操作commons-io-1.4.jar(1.4)io包commons-lang-2.3.jar(2.3)基础工具包,封装一些常用的基础操作,例如StringUtils类commons-pool-1.3.jar(1.3) ...
JSONP 原理
HTML中script标签可以加载其他域下的js,比如我们经常引入一个其他域下线上cdn的jQuery。那如何利用这个特性实现从其他域下获取数据呢?可以先这样试试:<scriptsrc="http://api.jirengu.com/weather.php"></script>这时候会向天气接口发送请求获取数据,获取数据后做为js来执行。但这里有个问题,数据是JSON格式的数据,直接作为JS运行的话我如何去得到这个数据来操作呢?这样试试:<scriptsrc="http://api.jirengu.com/weather.php?callback=showData"></script>这个请求到达后端后,后端会去解析callback这个参数获取到字符串showData,在发送数据做如下处理:之前后端返回数据:{"city":"hangzhou","weather":"晴天"}现在后端返回数据:showData({"city":"hangzhou","weather":"晴天"})前端script标签在加载数据后会把「showData({“...
JS Math.round()方法原理
请先测试代码:1<!doctypehtml>2<htmllang="en">34<head>5<metacharset="UTF-8"/>6<title>Math.round方法</title>7<styletype="text/css">8*{9padding:0;10margin:0;11}12</style>13</head>1415<body>16<scripttype="text/javascript">17Math.round(1.0);//118Math.round(1.4);//119Math.round(1.5);//220Math.round(1.6);//221Math.round(-1.0);//-122Math.round(-1.4);//-123Math.round(-1.5);//-124Math.round(-1.6);//-225</script>26</body>2728</ht...
【机器学习】K-Means聚类算法原理
原文链接:K-Means聚类算法原理作者:刘建平Pinard K-Means算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛。K-Means算法有大量的变体,本文就从最传统的K-Means算法讲起,在其基础上讲述K-Means的优化变体方法。包括初始化优化K-Means++,距离计算优化elkanK-Means算法和大数据情况下的优化MiniBatchK-Means算法。 K-Means算法的思想很简单,对于给定的样本集,按照样本之间的距离大小,将样本集划分为K个簇。让簇内的点尽量紧密的连在一起,而让簇间的距离尽量的大。 如果用数据表达式表示,假设簇划分为(C1,C2,...Ck)(C1,C2,...Ck),则我们的目标是最小化平方误差E:E=∑i=1k∑x∈Ci||x−μi||22E=∑i=1k∑x∈Ci||x−μi||22 其中μiμi是簇CiCi的均值向量,有时也称为质心,表达式为:μi=1|Ci|∑x∈Cixμi=1|Ci|∑x∈Cix 如果我们想直接求上式的最小值并不容易,这是一个...
Docker 系列(二): Docker 镜像原理
摘要:近日,DaoCloud软件工程师孙宏亮在CSDNContainer微信群为大家带来了Docker镜像原理的深度分享,本次分享的重点是Docker镜像,分享的内容主要包含两个部分:1)Docker镜像的基本知识;2)Dockerfile,Docker镜像与Docker容器的关系。嘉宾介绍:孙宏亮,硕士,浙江大学毕业,现为DaoCloud软件工程师,出版有《Docker源码分析》,目前主要负责企业级容器云平台的研发工作。数年来一直从事云计算、PaaS领域的研究与实践,是国内较早一批接触Docker的先行者,同时也是Docker技术的推广者。1.1什么是Docker镜像从整体的角度来讲,一个完整的Docker镜像可以支撑一个Docker容器的运行,在Docker容器运行过程中主要提供文件系统视角。例如一个ubuntu:14.04的镜像,提供了一个基本的ubuntu:14.04的发行版,当然此镜像是不包含操作系统Linux内核的。说到此,可能就需要注意一下,linux内核和ubuntu:14.04Docker镜像的区别了。传统虚拟机安装ubuntu:14.04会包含两部分,第...
【java+selenium3】自动化基础小结+selenium原理揭秘 (十七)
一、自动化实现原理 1.创建驱动对象 (1) 首先加载浏览器安装目录下的exe文件 (2)其次是加载可执行驱动的exe文件,监听等待客户端发送的webservice请求.底层原理如下: 1.在自动化测试过程中,存在三部分组件:客户端脚本+驱动+浏览器终端。 2.驱动文件,以geckodriver.exe为例,这个可执行的驱动文件启动后,相当于一个暴露了一系列接口的服务器,监听某一端口,例如:89890。 3.客户端的操作(访问页面,定位元素,输入数据,点击按钮等)都是封装成了接口请求(eg:/session/xx/yy),然后提交到驱动服务器。 4.驱动服务器接收到客户端的请求后,再跟终端浏览器交互。 5.终端浏览器做出相应操作。二、driver调用方法小结三、Selenium1.0的工作原理 Selenium1.0,又称SeleniumRC,RC是RemoteControl的缩写。SeleniumRC利用的原理:JavaScript代码可以方便的获取页面上的任意元素并执行各种操作。 但是因...
Mysql的事务实现原理 转
原文地址:https://www.toutiao.com/a6777338939360412171/ 1开篇 相信大家都用过事务以及了解他的特点,如原子性(Atomicity),一致性(Consistency),隔离型(Isolation)以及持久性(Durability)等。今天想跟大家一起研究下事务内部到底是怎么实现的,在讲解前我想先抛出个问题:事务想要做到什么效果? 按我理解,无非是要做到可靠性以及并发处理。 可靠性:数据库要保证当insert或update操作时抛异常或者数据库crash的时候需要保障数据的操作前后的一致,想要做到这个,我需要知道我修改之前和修改之后的状态,所以就有了undolog和redolog。 并发处理:也就是说当多个并发请求过来,并且其中有一个请求是对数据修改操作的时候会有影响,为了避免读到脏数据,所以需要对事务之间的读写进行隔离,至于隔离到啥程度得看业务系统的场景了,实现这个就得用MySQL的隔离级别。 下面我首先讲实现事务功能的三个技术,分别是日志文件(redolog和undolog),锁技术以及MVCC,然后再讲事务的实现原理,...
Java 线程池实现原理及其在美团业务中的实践
出处: Java线程池实现原理及其在美团业务中的实践 随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流。使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器。J.U.C提供的线程池ThreadPoolExecutor类,帮助开发人员管理线程并方便地执行并行任务。了解并合理使用线程池,是一个开发人员必修的基本功。 本文开篇简述线程池概念和用途,接着结合线程池的源码,帮助读者领略线程池的设计思路,最后回归实践,通过案例讲述使用线程池遇到的问题,并给出了一种动态化线程池解决方案。 一、写在前面1.1线程池是什么 线程池(ThreadPool)是一种基于池化思想管理线程的工具,经常出现在多线程服务器中,如MySQL。 线程过多会带来额外的开销,其中包括创建销毁线程的开销、调度线程的开销等等,同时也降低了计算机的整体性能。线程池维护多个线程,等待监督管理者分配可并发执行的任务。这种做法,一方面避免了处理任务时创建销毁线程开销的代价,另一方面避免了线程数量膨胀导致的过分调度问题,保证了对内核的充分利用。 而本文描述线程池是J...
Apache Bench — web压力测试工具
一、ApacheBench简介 ApacheBench是Apache服务器自带的一个web压力测试工具,简称ab。ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问,因此可以用来测试目标服务器的负载压力。总的来说ab工具小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。二、ApacheBench安装 首先需要安装Apache服务器,下载地址:https://www.apachelounge.com/download/,64位操作系统选上面一个压缩包。 安装Ubuntu 1:使用apt在线安装:sudoaptinstallapache2-utils 2:检查安装是否成功:ab-V常用参数说明测试报告解读 (1)模拟1个客户端请求100次: ab-n100http://www.example.com/ (2)模拟100个客户端请求10000次: ab-n10000-c100http://www.example.com/ (3)调用...
音视频的同步原理--记录
1. 音视频同步的原理 2. 音视频同步的较正方法 3. 音视频同步时遇到的问题声明:以下所有内容均为转载 1.原文转自:http://bbs.chinavideo.org/viewthread.php?tid=1183&extra=page%3D1%26amp%3Bfilter%3Ddigest&page=1下面贴出部分:音视频同步这一块,我一直不是很了解,很想尝试一下,下面是在qq群上向诸位前人请教的会话记录,因为对我这样的初学者很有帮助,所以粘贴至此,以作备份,再次感谢热心回答问题的人,尤其是(不做好人!)^_^;2006-10-2510:21:06 dophin有人有实时编码时对音视频进行录制时,音视频如何同步的相关资料么?有相关网站也可以哈,我实在找不到相关资料了。。。2006-10-2510:25:42 dophin或者具体一点的也行,比如音视频到底是如何同步的,有书籍介绍也可以啊,先谢了哈。。。。(人众人) 2006-1...
RxJava原理学习
...
[五]类加载机制双亲委派机制 底层代码实现原理 源码分析 java类加载双亲委派机制是如何实现的
原文地址:[五]类加载机制双亲委派机制底层代码实现原理源码分析java类加载双亲委派机制是如何实现的Launcher启动类本文是双亲委派机制的源码分析部分,类加载机制中的双亲委派模型对于jvm的稳定运行是非常重要的不过源码其实比较简单,接下来简单介绍一下 我们先从启动类说起有一个Launcher类 sun.misc.Launcher; 仔细看下这简短的几行注释,可以得到有用的信息ps:直接IDE里面查看反编译的,看不到注释的,可以下载openJDK查看源码,我的这个版本是openjdk-8-src-b132-03_mar_2014 sun.misc.Launcher这个类是系统用于启动主应用的启动器 构造方法Launcher()中做了四件事情创建 扩展 类加载器创建 &n...
ReentrantLock实现原理及源码分析
ReentrantLock是Java并发包中提供的一个可重入的互斥锁。ReentrantLock和synchronized在基本用法,行为语义上都是类似的,同样都具有可重入性。只不过相比原生的Synchronized,ReentrantLock增加了一些高级的扩展功能,比如它可以实现公平锁,同时也可以绑定多个Conditon。 可重入性 所谓的可重入性,就是可以支持一个线程对锁的重复获取,原生的synchronized就具有可重入性,一个用synchronized修饰的递归方法,当线程在执行期间,它是可以反复获取到锁的,而不会出现自己把自己锁死的情况。ReentrantLock也是如此,在调用lock()方法时,已经获取到锁的线程,能够再次调用lock()方法获取锁而不被阻塞。那么有可重入锁,就有不可重入锁,我们在之前文章中自定义的一个Mutex锁就是个不可重入锁,不过使用场景极少而已。 公平锁/非公平锁 所谓公平锁,顾名思义,意指锁的获取策略相对公平,当多个线程在获取同一个锁时,必须按照锁的申请时间来依次获得锁,排排队,不能插队;非公平锁则不同,当锁被释放时,等待...
ConcurrentHashMap实现原理及源码分析
ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),ConcurrentHashMap在并发编程的场景中使用频率非常之高,本文就来分析下ConcurrentHashMap的实现原理,并对其实现原理进行分析(JDK1.7). 众所周知,哈希表是中非常高效,复杂度为O(1)的数据结构,在Java开发中,我们最常见到最频繁使用的就是HashMap和HashTable,但是在线程竞争激烈的并发场景中使用都不够合理。 HashMap:先说HashMap,HashMap是线程不安全的,在并发环境下,可能会形成环状链表(扩容时可能造成,具体原因自行百度google或查看源码分析),导致get操作时,cpu空转,所以,在并发环境中使用HashMap是非常危险的。 HashTable:HashTable和HashMap的实现原理几乎一样,差别无非是1.HashTable不允许key和value为null;2.HashTable是线程安全的。但是HashT...