11 2017 档案
摘要:转自http://blog.csdn.net/u014694759/article/details/30295285 方法一: MySQL目前不支持列的Default 为函数的形式,如达到你某列的默认值为当前更新日期与时间的功能,你可以使用TIMESTAMP列类型,下面就详细说明TIMESTAMP列
阅读全文
摘要:1.命名规范 (1)库名、表名、字段名必须使用小写字母,并采用下划线分割。 (2)库名、表名、字段名禁止超过32个字符。 (3)库名、表名、字段名必须见名知意。命名与业务、产品线等相关联。 (4)库名、表名、字段名禁止使用MySQL保留字。(保留字列表见官方网站) (5)临时库、表名必须以tmp为前
阅读全文
摘要:写在前面的话: 总是在灾难发生后,才想起容灾的重要性;总是在吃过亏后,才记得曾经有人提醒过。 (一)核心军规(1)不在数据库做运算:cpu计算务必移至业务层(2)控制单表数据量:单表记录控制在1000w(3)控制列数量:字段数控制在20以内(4)平衡范式与冗余:为提高效率牺牲范式设计,冗余数据(5)
阅读全文
摘要:军规:必须使用UTF8字符集 和DBA负责人确认后,纠正为“新库默认使用utf8mb4字符集”。 这点感谢网友的提醒,utf8mb4是utf8的超集,emoji表情以及部分不常见汉字在utf8下会表现为乱码,故需要升级至utf8mb4。 默认使用这个字符集的原因是:“标准,万国码,无需转码,无乱码风
阅读全文
摘要:军规适用场景:并发量大、数据量大的互联网业务 军规:介绍内容 解读:讲解原因,解读比军规更重要 一、基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省空间
阅读全文
摘要:转自http://blog.csdn.net/jamesjxin/article/details/46606307 前言 在日常Java开发中,我们经常碰到java.lang.NoClassDefFoundError这样的错误,需要花费很多时间去找错误的原因,具体是哪个类不见了?类明明还在,为什么找
阅读全文
摘要:main函数开启一个新线程,在内存中的过程 上述代码,在内存中的状态如下图所示。执行步骤主要是下面四步。 1、运行上述java文件,由虚拟机执行类的入口main函数,分配了一个主线程。 2、main方法在主线程所在栈中,压栈,实例一个新的子线程,并开启了这个子线程 3、jvm给子线程分配了一块子线程
阅读全文
摘要:由于等待一个锁定线程只有在获得这把锁之后,才能恢复运行,所以让持有锁的线程在不需要锁的时候及时释放锁是很重要的。在以下情况下,持有锁的线程会释放锁: 1. 执行完同步代码块。 2. 在执行同步代码块的过程中,遇到异常而导致线程终止。 3. 在执行同步代码块的过程中,执行了锁所属对象的wait()方法
阅读全文
摘要:转自:http://ifeve.com/think-in-java-monitor/ 如果你在大学学习过操作系统,你可能还记得监听器在操作系统中是很重要的概念。同样监听器在java同步机制中也有使用,本文通过类比的方法来解释“监听器”的基本思想。 什么是监听器? 监听器可以看成是包含了一间特殊房间的
阅读全文
摘要:为了更高效的处理一些时间片短,任务量大的任务,我们可能会经常用到多线程。但是多线程的环境下,很容易出现线程并发问题,线程死锁就是很常见的一种并发问题。为了避免此类问题,我们会用到线程间的通信,而等待唤醒机制,就是线程间通信的一种形式。 等待唤醒机制用到的方法主要有: public final voi
阅读全文
摘要:转自:http://www.cnblogs.com/webdeve/p/7865520.html本文摘要: 输入网址 输入网址 当我们在浏览器输入网址并回车后,一切从这里开始。 一、DNS域名解析 我们在浏览器输入网址,其实就是要向服务器请求我们想要的页面内容,所有浏览器首先要确认的是域名所对应的服
阅读全文
摘要:http://www.importnew.com/27326.html
阅读全文
摘要:不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发、调试、优化经验,所以线程相关的问题在面试中经常会被提到。 在典型的
阅读全文
摘要:今天写了一个统计sql,在一个近亿条数据的表上执行,200s都查不出结果。SQL如下: select customer,count(1) c from upv_** where created between "2015-07-06" and "2015-07-07" group by custom
阅读全文
摘要:线程有5种状态,分别是新建、受阻塞、运行、死亡、休眠、等待。 在api中的解释如下图1所示 图1 图2 解释一下上述图2的过程。 1、new一个线程对象,该对象的状态为“新建状态”。 2、执行start(),如果cpu现在空闲,则切换到运行状态,否则切换到阻塞状态。 3、线程执行sleep(),切换
阅读全文
摘要:数组 操作数据(增加): 是将原数组的数据复制一份,再加上增加的对应位置的数据,形成一个新的数组。所以较慢。 查找数据:数组是有下标的,根据下标进行查找。 链表 一个链表的数据单元,结构是存储着一个数据,以及下一个链表单元数据的地址。如下所示。 操作数据(增加):如 a-b。在ab之间增加一个c,增
阅读全文