`
zy116494718
  • 浏览: 470517 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
       关于OpenResty(http://openresty.org/cn/) OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器,它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。 OpenResty 通过汇聚各种设计精良的 Nginx 模块, 从而将 Nginx 有效的变成一个强大的 Web 应用服务器, 这样, Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种C以及Lua 模块, 快速构造出足以胜任 10K+ 并发连接响应的超高性能Web 应用系统   一. 安装openres ...
       当我们用Filter时,往往需要使用一些辅助的service,在普通的java中,只要声明(set,get方法)后在spring-application配置文件中配置就可以了,但是由于Filter与Listener需要配置在web.xml文件中,所以它们的对象是由容器创建的。通常在Spring的application-context.xml配置文件中编写的bean由Spring负责创建,所以直接在Spring配置文件配置过滤器与监听器是无法达到注入目的的。         可以使用如下方法,例: public class JudgeUserRole implements ...
Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点:   那么,Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的 ...
线程池的作用:      线程池作用就是限制系统中执行线程的数量。      根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果;少了浪费了系统资源,多了造成系统拥挤效率不高。用线程池控制线程数量,其他线程 排队等候。一个任务执行完毕,再从队列的中取最前面的任务开始执行。若队列中没有等待进程,线程池的这一资源处于等待。当一个新任务需要运行时,如果线程 池中有等待的工作线程,就可以开始运行了;否则进入等待队列。   为什么要用线程池: 减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务 可以根据系统的承受能力, ...
          缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载。缓存是解决这个问题的好办法。 Memcached是什么? Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。   Memcache 是什么 Memcache 是 danga.com 的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来 ...
        Socket是最基础的网络编程技术,HttpURLConnection和HttpClient都是基于Socket的。下面来看一个从服务器端下载文件到客户端的例子。         服务器端:        package org.huodong.action; import java.io.FileInputStream; import java.io.InputStream; import java.io.OutputStream; import java.net.ServerSocket; import java.net.Socket; publ ...
       Ajax和iframe都可以实现局部刷新。他们实现的功能基本一样。        下面是一个用jquery实现的Ajax局部刷新。   实现的功能是在文本框中输入年龄后,在下面的<div>中显示出数据库中该年龄的所有用户姓名     ajaxshuaxin.jsp:    <script type="text/javascript">  $(function(){  $("input:eq(1)").click(function(){      $("#show").html(&q ...

Future详解

    博客分类:
  • Java
一般使用线程池执行任务都是调用的execute方法,这个方法定义在Executor接口中: public interface Executor { void execute(Runnable command); } 这个方法是没有返回值的,而且只接受Runnable。 那么像得到线程的返回值怎嘛办呢? 在ExecutorService接口中能找到这个方法: <T> Future<T> submit(Callable<T> task); <T> Future<T> submit(Runnable task, ...

CountDownLanch原理

    博客分类:
  • Java
文章转载自:https://segmentfault.com/a/1190000016508108
假如我们现在有一需求,需要统计一个字符串中各个字母出现的频率,然后从中找出频率最高的字母。让我们先来看看jdk8之前的写法。 public static void main(String[] args) { String str = "hello java, i am vary happy! nice to meet you"; // jdk1.8之前的写法 HashMap<Character, Integer> result1 = new HashMap<>(32); ...

mysql索引失效情况

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/qq_34258346/article/details/802721981、最佳左前缀原则——如果索引了多列,要遵守最左前缀原则。指的是查询要从索引的最左前列开始并且不跳过索引中的列。前提条件:表中已添加复合索引(username,password,age)分析:该查询缺少username,查询条件复合索引最左侧username缺少,违反了最佳左前缀原则,导致索引失效,变为ALL,全表扫描分析:查询条件缺少username,password ...
新装了idea新版本,Pom.xml报错org/codehaus/plexus/util/StringUtils,原因是maven配置问题,修改如下:  

java泛型实例

    博客分类:
  • Java
  首先定义一个接口: public interface ApplyCommonService<T> { public SaveApplyVO getSaveApplyVO(T applyWareVO, CheckGroup checkGroup); }  然后定义抽象类: public abstract class AbstractApplyCommonService<T> implements ApplyCommonService<T> { pub ...
转载请注明出处:https://blog.csdn.net/l1028386804/article/details/80395882Java 7 的编译器和运行环境支持新的 try-with-resources 语句,称为 ARM 块(Automatic Resource Management) ,自动资源管理。新的语句支持包括流以及任何可关闭的资源,例如,一 ...
首先说一下传统的I/O多路复用select和poll,对比一下和epoll之间的区别:举个例子:假如有100万用户同时与一个进程保持TCP连接,而每一时刻只有几十或者几百个tcp连接是活跃的(即能接收到TCP包),那么在每一时刻进程只需要 ...
Global site tag (gtag.js) - Google Analytics