如何在高并发环境下设计出无锁的数据库操作(Java版本)

一个在线2k的游戏,每秒钟并发都吓死人。传统的hibernate直接插库基本上是不可行的。我就一步步推导出一个无锁的数据库操作。 1. 并发中如何无锁。 一个很简单的思路,把并发转化成为单线程。Java的Disruptor就是一个很好的例子。如果用java的concurrentCollection类去做,原理就是启动一个线程,跑一个Queue,并发的时候,任务压入Queue,

强迫自己学习(实践篇),以及关于写博客的几点建议

前言 要强调了两个内容,一个是要相信自己,一个是要压制自己浮躁的心理。这两点都是非常重要的,倘若做不到这两点,那么在你学习的过程的当中,很有可能会碰到各种各样的问题。   比如第一点相信自己,我们主要强调的是不要攀比。试想如果你做不到这一点,在你正奋力的学习的时候,忽然发现身边的一个朋

技术普及帖:你刚才在淘宝上买了一件东西

你发现快要过年了,于是想给你的女朋友买一件毛衣,你打开了www.taobao.com。这时你的浏览器首先查询DNS服务器,将www.taobao.com转换成ip地址。不过首先你会发现,你在不同的地区或者不同的网络(电信、联通、移动)的情况下,转换后的IP地址很可能是 不一样的,这首先涉及到负载均

现代浏览器的工作原理

简介 浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工 作原理,我们将看到,从你在地址栏输入google.com到你看到google主页过程中都发生了什么。 将讨论的浏览器 今天,有五种主流浏览器——IE、Firefox、Safari、Chrome及Opera。 本文将基于一些开源浏览器的例子——Firefox、 Chrome及Safari,Safari是部分开源的。 根据W3C

有经验的Java开发者和架构师容易犯的10个错误

首先允许我们问一个严肃的问题?为什么Java初学者能够方便的从网上找到相对应的开发建议呢?每当我去网上搜索想要的建议的时候,我总是能发现一大堆是关于基本入门的教程、书籍以及资源。同样也发现网上到处充斥着从宽泛的角度描述一个大型的企业级项目:如何扩展你的架构, 即使是经验丰富的Java开发人员和架构师也会犯错。今天,我们讨论了如果您不密切注意,您可能会犯的Java开发人员常见错误!

Java编程:常见问题汇总

该页面收集了一些不好的代码,对于初学者来说看起来似乎并不那么糟糕。初学者经常在语言语法上挣扎。他们对标准JDK类库以及如何最好地利用它也不了解。实际上,我已经从日常初级代码中收集了所有示例。我已经修改了原始代码,为它提供了示例字符,从而突出了问题所在。SonarQube可以很容易地发现许多这些问题。我强烈推荐此工具。

JAVA虚拟机体系结构

JAVA虚拟机的生命周期   一个运行时的Java虚拟机实例的天职是:负责运行一个java程序。当启动一个Java程序时,一个虚拟机实例也就诞生了。当该程序关闭退出,这个虚拟机实例也就随之消亡。如果同一台计算机上同时运行三个Java程序,将得到三个Java虚拟机实例。每个Java程序都运行于它自己的Java虚拟机实例中。   Java虚拟机实例通过调用某个初始类的main()方法来运行

nginx-高并发配置

一、nginx服务配置优化:1.nginx进程数,建议按照cpu数目来指定,一般为它的倍数。worker_processes定义了nginx对外提供web服务时的worker进程数。最优值取决于许多因素,包括(但不限于)CPU核的数量、存储数据的硬盘数量及负载模式。不能确定的时候,将其设置为可用的C

Nginx code 状态码说明

最近了解下Nginx的Code状态码,在此简单总结下。先来再回顾一下一个http请求处理流程:一个普通的http请求处理流程,如上图所示:A->client端发起请求给nginxB->nginx处理后,将请求转发到uwsgi,并等待结果C->uwsgi处理完请求后,返回数据给ngi

Hive官方文档翻译——Hive Tutorial

概念什么是HiveHive是基于ApacheHadoop的数据仓库基础架构。Hadoop为商品硬件上的数据存储和处理提供了大规模的横向扩展和容错功能。Hive旨在简化数据汇总,临时查询和分析大量数据的过程。它提供了SQL,使用户可以轻松地进行即席查询,摘要和数据分析。同时,Hive的SQL为用户提供
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×