使用TPC-H 进行MySQL数据库性能测试 本文简单记叙在Linux环境下通过TPC-H生成MySQL数据库测试数据的步骤,作为后续参考。生成数据的量级如下,数据库需要300G左右空间。表名 数据行数 量级 customer 15000000 1.5千万 lineitem 600037902 6亿 nation 25 orders 150000000 1...
Springboot 中文文档 —— Actuator Springboot 中文文档 —— Actuatorhttps://blog.csdn.net/kangsa998/article/details/103021718
HTTPS之SNI介绍与Nginx多域名支持 一、介绍 早期的SSLv2根据经典的公钥基础设施PKI(Public Key Infrastructure)设计,它默认认为:一台服务器(或者说一个IP)只会提供一个服务,所以在SSL握手时,服务器端可以确信客户端申请的是哪张证书。但是让人万万没有想到的是,虚拟主机大力发展起来了,这就造成了一个IP会对应多个域名的情况。解决办法有一些,例如申请泛域名证书,对所有*.yourdomai...
Maven 插件生成MyBatis的mapper, xml和Entity类 mybatis-generator 概述MyBatis官方提供了逆向工程 mybatis-generator,可以针对数据库表自动生成MyBatis执行所需要的代码(如Mapper.java、Mapper.xml、POJO)。mybatis-generator 有三种用法:命令行、eclipse插件、maven插件。pom.xml中配置plugin<build> ...
企业系统软件分类简介 企业在运行的过程中,需要很多的辅助软件,来支持企业的正常运转和加快企业的运行速度等,那么企业在有哪些软件需要呢?1、企业的基础管理软件-OAOA的中文意思是办公自动化,是英文Office Automation的缩写,常常被称为OA办公系统或OA办公软件。OA的核心思想是利用网络和软件构建单位内部的办公管理平台,用于提升企业的内部管理、办公效率和执行力。随着平台化OA的应用和普及,OA的功能...
简明理解泛型中的? extends T 与 ? super T 简单来说,通过List<? extends T>定义的list只能从里面取数据,取出来的对象都是T类型或者T类型的子类。对于List<? super T>定义的list,只能将对象元素放入list,放入的对象是T类型或者T类型的子类。总结为PECS原则:由于<? extends T>的只能取,不能存,而<? super T>得只能存,不能取,因...
深入浅出 TCP/IP 协议栈 深入浅出 TCP/IP 协议栈TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求。由于我们大部分时间都工作在应用层,下层的事情不用我们操心;其次网络协议体系本身就很复杂庞大,入门门槛高,因此很...
no-cache,max-age=0,nostore区别及304原理 稍微了解HTTP协议的前端同学,相比对Cache-Control不会感到陌生,性能优化时经常都会跟它打交道。常见的值有有private、public、no-store、no-cache、must-revalidate、max-age等。网上总结挺多的,但是,系统好理解确实很少浏览器缓存机制在说这个服务如何写之前我们先要明白浏览器缓存到底是个啥。来看下这个简略示意图:可以看到浏览器的...
nginx 反向代理设置中的proxy_redirect 当用nginx做反向代理将客户端浏览器请求转发到后端应用服务器上的时候,如果有协议和url转换的时候,当后端服务器做302、301跳转的时候,需要用proxy_redirect将后端设置在response header中的Location做转换.比如后端应用Java:LOG.debug("sendRedirect host in header " + req.getHeader("Host"));
Java中IO流体系 转载: https://mp.weixin.qq.com/s?__biz=MzA5NzgzODI5NA==&mid=2454030958&idx=1&sn=df27aadb92e575e96115ec809506245a&chksm=872b9fd7b05c16c10f265b495b7204b843f6825771292b30a9124f6d32367d2d9485493316ea&scene=
Hadoop 2.6 日志文件和MapReduce的log文件 Hadoop 2.6包含两个大部分:DFS和Yarn,而Yarn里面又包含在Resource Manager的JVM中运行的部分和在Node Manager里面运行的JVM部分。所以整个系统(不考虑加装ZooKeeper的HA的情况)的log是分别放在3个log里面的。1. 对于DFS的log,在Name Node和Data Node里面,默认可以在${HADOOP_INSTALL}/logs里面
DT大数据梦工厂视频资源 DT大数据梦工厂视频资源:1,《大数据不眠夜:Spark内核天机解密(共140讲)》: 51CTO在线观看(支持手机、平板、PC): http://edu.51cto.com/course/course_id-4703.html 百度云下载: http://pan.baidu.com/s/1eQsHZAq 2,《Hadoop深入浅出实战经典》http://pan.bai
hdfs rack机架感知配置 HDFS不能够自动判断集群中各个datanode的网络拓扑情况。这种机架感知需要topology.script.file.name属性定义的可执行文件(或者脚本)来实现,文件提供了IP->rackid的翻译。NameNode通过这个得到集群中各个datanode机器的rackid。如果topology.script.file.name没有设定,则每个IP都会翻译成/default-rack。 下
HDFS读文件过程分析:读取文件的Block数据 我们可以从java.io.InputStream类中看到,抽象出一个read方法,用来读取已经打开的InputStream实例中的字节,每次调用read方法,会读取一个字节数据,该方法抽象定义,如下所示: public abstract int read() throws IOException; Hadoop的DFSClient.DFSInputStream类实现了该抽象逻辑,如果我们清楚了
Linux 用户操作-解锁 1、禁止个别用户登录。比如禁止lynn用户登录。passwd -l test这就话的意思是锁定test用户,这样该用户就不能登录了。passwd -u test对锁定的用户lynn进行解锁,用户可登录了。 2、我们通过修改/etc/passwd文件中用户登录的shellvi /etc/passwdtest:x:500:500::/home/test:/bin/bash更改为:test:x:500:
SQL Server统计表的行数 Use DB_NameGO SELECT schema_name=SCHEMA_NAME(tb.schema_id) ,table_name =OBJECT_NAME(tb.object_id) ,row_count =SUM(CASEWHEN ps.index_id 2 THEN ps.row_count ELSE 0 END)FROMsys.dm_db_partition_
浏览器、操作系统DNS缓存时间 1、浏览器DNS缓存的时间跟DNS服务器返回的TTL值无关。2、Java的网络应用程序的DNS缓存是由JVM的缓存策略控制的3、OS缓存会参考DNS服务器响应的TTL值,但是不完全等于TTL值。正文示意图:DNS查询请求类型查询响应类型 DNS服务器对于客户请求的答复具有多种类型,常见的有以下四种: 权威答复:权威答复是返回给客户的正向答复,并且设置了DNS消息中的权威位。此答复代表从具有权威的
磁盘性能分析Disk Windows性能计数器--磁盘性能分析DiskPhysical Disk:单次IO大小Avg.Disk Bytes/ReadAvg.Disk Bytes/WriteIO响应时间Avg.Disk sec/ReadAvg.Disk sec/WriteIOPSDiskReads/secDiskWrites/secDiskTransfers/secIO吞吐率DiskBytes/secDiskRead B
数据库设计三大范式 数据库设计三大范式为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 在实际开发中最为常见的设计范式有三个:1.第一范式(确保每列保持原子性)第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据
JAVA输出带BOM的UTF-8编码的文件 当从http 的response输出CSV文件的时候,设置为utf8的时候默认是不带 bom的,但是windows的Excel是使用bom来确认utf8编码的,所有需要把bom写到文件的开头。 否则用Excel打开CSV文件有可能是烂码的 示例代码如下: response.setContentType("text/csv"); response.setHeader("
Linux下的wget和curl如何使用http proxy 简单备忘一下Linux下的wget和curl如何使用http proxywget -e "http_proxy=porxyhost:port" www.baidu.com curl -x proxyhost:port www.baidu.com
HDFS JAVA客户端的权限错误:Permission denied HDFS JAVA客户端的权限错误:Permission denied 搭建了一个Hadoop的环境,Hadoop集群环境部署在几个Linux服务器上,现在想使用windows上的Java客户端来操作集群中的HDFS文件,但是在客户端运行时出现了如下的认证错误,被折磨了几天,问题终得以解决。以此文记录问题的解决过程。(如果想看最终解决问题的方法拉到最后,如果想看我的问题解决思路请从上向下看)问题
怎样成为一个好的技术领导者 如果不能从帮助团队获得满足感,那么就不要成为一名领导者技术领导者要忙于会议、计划、打断、团队沟通、文档等工作,永远无法达到一个人单独工作时所能达到的那种个体生产力。技术领导者的工作不再是让自己成为最好的编码人员,而是要尽可能地让其他人成为最好的编码人员。工作分配也要以一种有利于团队和个人成长的方式进行。要负责为团队成员清楚障碍,让他们的工作进入正轨。技术领导者的满足感来自新人的培养和成长。将自己视
如何更改Linux中默认的openjdk为自己安装的JDK (1)/etc/profileexport JAVA_HOME=/usr/java/jdk1.7.0_67-cloudera/export PATH=$PATH:$JAVA_HOME/binexport JRE_HOME="$JAVA_HOME/jre"export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/rt.jar修改...
Java 工程师成神之路 转载 https://linux.cn/article-6739-1.html一、基础篇1.1 JVM1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收http://www.jcp.org/en/jsr/detail?id=133 http://ifeve.com/jmm-faq/ 1.1.2. 了解JVM各种参数及调优1.1.3. 学习使用Java工具jps, jstac
成为CTO之前怎样炼成一位技术领导人 转载 http://mobile.51cto.com/team-496010.htm近日,一名有超过 15 年软件开发经验的软件开发人员在 Hacker News 上提出了一个问题:如何才能成为一个好的技术领导者?该问题一经提出,在不到一天的时间内就获得了 160 多条回复。关于技术领导者应该具备的品质和管理技巧,网友们提出了各自的看法和建议,本文择要归纳如下。如果不能从帮助团队获得满足感,那么就
Maven常用到的一些方法 将一个jar文件加入到repository中:mvn install:install-file -Dfile=sqljdbc4-4.0.jar -DpomFile=sqljdbc4-4.0.pom
JS通过prototype实现继承的简单示例: JS通过prototype实现继承的简单示例:var MYJS={};MYJS.extend=function(baseClass, prop) { if (typeof (baseClass) === "object") { prop = baseClass; baseClass = null; } // 本次调用所创建的类(构造函数) function F() { }
几个开源协议的简介 这里我们来看四种最常用的开源协议及它们的适用范围,供那些准备开源或者使用开源产品的开发人员/厂家参考。BSD开源协议(original BSD license、FreeBSD license、Original BSD license)BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。但”为所欲为”
使用ANT编译项目报错 com.sun.image.codec.jpeg does not exist 解决方法 项目开发中在对图片进行裁切处理的时候,有时候是会使用到 com.sun 包下的类时,如果项目使用ant编译,会出现错误 com.sun.image.codec.jpeg does not exist 这是因为在JDK1.7+时,Oracle不允许使用sun.*的jar具体参见http://www.oracle.com/technetwork/java/faq-sun-packages-142232
Kerberos原理和使用 Kerberos原理Kerberos 服务是单点登录系统,这意味着您对于每个会话只需向服务进行一次自我验证,即可自动保护该会话过程中所有后续事务的安全。服务对您进行验证后,即无需在每次使用基于 Kerberos 的服务时进行验证。因此,无需在每次使用这些服务时都在网络上发送口令(增强了安全性)。MIT写了一段故事型的对话,比较生动得表述了Kerberos协议的工作原理:Athena和欧里庇得斯关于
Spring Batch 简介 转http://www.coderli.com/spring-batch-intro-sample/官方文档地址:http://docs.spring.io/spring-batch/trunk/reference/html/index.html 层次架构如上图。分三层:应用层,核心层,基础设施层。应用层包括所有的batch任务和用户开发的代码。核心层包括在运行期运行一个任务所需要的类,例如
Linux 参考信息链接 了解 GNU GPL/GNU LGPL/BSD/MIT/Apache协议 http://blog.csdn.net/flowingflying/article/details/5746151愷风(Wei)的专栏 for Linuxhttp://blog.csdn.net/flowingflying/article/category/526791Linux Bash Shell学习(二):目录和通配
inittab命令格式 1. inittab命令格式为id:runlevels:action:commandid是任意一个名称(具体是什么并不重要);runlevels是一个数字串(代表运行级别);command指定执行的实际命令;action的值可以为以下几种:respawn:启动命令并进行监视命令的执行,当进程退出时,再次执行该命令.wait:进入指定运行级别时,启动进程.init会停下来,直到执行完成.这个标记对于
linux下挂载(mount)各种文件 http://blog.csdn.net/tianxiaxingzhe/article/details/7887152挂接命令(mount)命令格式:mount [-t vfstype] [-o options] device dir其中:1.-t vfstype指定文件系统的类型,通常不必指定。mount会自动选择正确的类型。常用类型有: 光盘或光盘镜像:iso9660 DOS fat16文
如何打造成功的数据归档策略 http://www.vsharing.com/k/storage/2014-2/695281.html您将了解到:一个企业所需要的有效数据归档策略规划工具及流程,是根据公司法规、数据管理以及存储管理需求共同决定的。下面是一则有关人们询问美国首任总统林肯究竟男人的腿该有多长的故事。在回忆录里我们看到:“只要能够着地面就好。”同样的道理,当我们面临归档数据需要存放多久这个问题的时候,相信答案也是类似
onload事件和js的defer设置 onload事件在html文档中所有的节点都下载完成后执行,包括js,css,图片的资源完全下载后才执行。如果js 设置了defer之后,js的解析执行在浏览器生成了html文档后执行,不包括图片的资源下载如果js没有设置defer,将一个js放在head加载,会阻塞后面的内容加载。如下面的例子如果将defer=true去掉,直到x1.jscript和x2.jscript下载完成后,后面的aler
SSH免密码登录设置 机器A: 192.168.8.4机器B: 192.168.8.5实现在机器A上的用户usera1可以通过ssh免密码以机器B上的userb1身份登录到机器B1,在机器A上创建用户usera1:useradd usera1在机器A对用户usera1生成公钥/私钥对,以usera1登录ssh-keygen -t rsa -P ''上面这个命令会在/home/usera1/.ssh目录下生成私钥文件id
网站单点登录 至于什么是单点登录,举个例子,如果你登录了msn messenger,访问hotmail邮件就不用在此登录。一般单点登录都需要有一个独立的登录站点,一般具有独立的域名,专门的进行注册,登录,注销等操作我们为了讨论方便,把这个登录站点叫做站点P,设其Url为http://passport.yizhu2000.com,需要提供服务的站点设为A和B,跨站点单点登录是指你在A网站进行登录后,使用B网站的服
Linux中系统户登录和操作日志的记录 用户登录退出的日志记录在 /var/log/secure如果需要记录每个用户操作的记录,在/etc/profile配置文件的末尾加入以下脚本代码来实现:historyUSER=`whoami`USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`if [ "$USER_IP" = "" ]; thenUSER_
VMware中Ctrl Alt Fn不能切换终端的问题解决 在VMware station中使用如果想发 ctrl+alt 到 虚拟机. 先按 ctrl+alt+空格. 之后松开空格,不松开 ctrl和alt.再按你要发送的键.To send a key combination that includes ctrl+alt directly to theguest, press ctrl+alt+space, relase the space bar
JAVA访问LDAP(openldap)的示例 1,安装openldap,下载openldap: http://download.csdn.net/detail/kkdelta/8090881 修改c:\openldap\slapd.conf本示例中的suffix 和rootdn修改为如下:database bdb#suffix "dc=maxcrc,dc=com"#rootdn "cn=Manager,dc=
使用Heartbeat实现双机热备 使用Heartbeat实现”双机热备”或者称为“双机互备”heartbeat的工作原理:heartbeat最核心的包括两个部分,心跳监测部分和资源接管部分,心跳监测可以通过网络链路和串口进行,而且支持冗余链路,它们之间相互发送报文来告诉对方自己当前的状态,如果在指定的时间内未受到对方发送的报文,那么就认为对方失效,这时需启动资源接管模块来接管运行在对方主机上的资源或者服务。heartbeat的两台
在Linux上配置DRBD部署 两台机器的环境如下:hostname:srv5.localdomain192.168.8.5hostname:srv6.localdomain192.168.8.6准备环境在两台机器上各新加一块磁盘fdisk -l 列出所有的磁盘和分区的情况在实验中可以看到新加的磁盘还没有分区Disk /dev/sdb: 1073 MB, 1073741824 bytes255 heads, 63 sectors
Redhat没有注册时yum安装的错误解决 如果是redhat没有注册可能会碰到如下错误Loading "rhnplugin" pluginLoading "security" pluginLoading "installonlyn" pluginThis system is not registered with RHN.RHN support will be disabled.Existing lock /var/run/yum.pid
在Linux上通过IPIP实现IP隧道 一个通过IPIP实现IP隧道的简单示例两台主机,A和B,每台主机由两块网卡,其中eth0在同一个网段,能够互相连通。A的eth1和B的eth1分别在两个不同的网段。A:eth0:192.168.9.5 eth1:192.168.8.5B:eth0:192.168.9.6eth1:192.168.10.6网络拓扑图如下A:ip tun add lxT mode ipip remote 192.168
Linux中的hostname hostname命令来查看本机的hostname,#hostnamehostname命令可以设置系统的hostname#hostname newnamenewname即要设置的新的hostname,运行后立即生效(重新启动shell),但是在系统重启后会丢失所做的修改,如果要永久更改系统的hostname,就要修改相关的配置置文件。RedHat的hostname,就修改/etc/sysconfig
LVS配置NAT模式简单示例 本文一个简单的示例演示LVS的NAT模式的配置和测试。使用的配置环境如下:Director server: 192.168.8.4(对外提供服务的IP),192.168.9.4Real server1: 192.18.9.5Real server2: 192.168.9.6网络topology图如下:图2中的VIP指的是虚拟IP地址,还可以叫做LVS集群的服务IP,在DR、TUN模式中,数据包是直
Linux负载均衡软件LVS-DR模式的简单示例 本文一个简单的示例演示LVS的配置(DR模式)和测试。使用的配置环境如下:Director server: 192.168.8.4Real server1: 192.18.8.5Real server2: 192.168.8.6VIP: 192.168.8.200网络topology图如下:图2中的VIP指的是虚拟IP地址,还可以叫做LVS集群的服务IP,在DR、TUN模式中,数据包是直接返回给用
VMware虚拟机NAT模式的具体配置 NAT模式的具体配置NAT方式:虚拟机可以上外网,可以访问宿主计算机所在网络的其他计算机(反之不行)。1.1.1. 查看虚拟机的网络参数1) 打开虚拟机,选择菜单“编辑”》“编辑虚拟网络”,如下图: 2) 选中列表中的“VMnet8 NAT”,点击左下角“恢复默认”按钮,恢复默认参数设置。然后点击“NAT设置”按钮,如下图:3) 记录虚拟网络的子网IP:
使用keepalived实现双机热备 通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务。当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短。下面来以keepalived结合tomcat来实现一个web服务器的双机热备。keepalived的工作原理是VRRP(Virtual Router Redundancy Protocol)虚拟路由冗余协议。在VRRP中有两组重要的概念:
用MAT分析JAVA程序运行时的内存使用情况 Java出现OutOfMemoryError或者发现Java应用程序占用的内存很异常,那么我们一般采用下面的步骤分析:A. 把Java应用程序使用的heap dump下来B. 使用Java heap分析工具,找出内存占用超出预期的嫌疑对象C. 根据情况,分析嫌疑对象和其他对象的引用关系。D. 分析程序的源代码,找出嫌疑对象数量过多的原因。以下面的代码为例:public class TObject
https原理 我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议。HTTPS简介HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的,且看下图。1. 客户端发起H
打造敏捷的自组织团队 敏捷思想的出现让我们看到了新的曙光——以更低的风险、更高的效率开发出更具质量的软件产品。正因如此,敏捷方法得到了业内足够的重视并使各路团队相拥实践。然而,即便我们对于各种敏捷原则、范式、方法和流程了如指掌,仍会发现其所给组织带来的改善远达不到我们的预期。这究竟是为什么?造成这种困境的根源并非我们学得不精,而是实践不到位。在我看来,敏捷宣言过于简单(好吧,是宣言总得简单一点!),以至于足以让人对之产
hive的安装配置步骤简单记录 本文简单记录一下hive的安装配置步骤tar -xzvf hive-0.11.0-bin.tar.gz在~home目录中配置path变量将hive bin目录加入pathexport PATH=$PATH:/home/hadoop/hadoop-0.20.2/bin:/home/hadoop/hbase-0.92.1/bin:/home/hadoop/zookeeper-3.4.5
JAVA远程操作Zookeeper示例 zookeeper可以单独安装,如果在hbase安装完成后,hbase-env.sh中没有设置export HBASE_MANAGES_ZK=true,会随hbase启动zookeeper。本文使用http://blog.csdn.net/kkdelta/article/details/20058683中配置的hbase环境测试zookeeper的使用。示例代码如下package or
在Eclipse中运行JAVA代码远程操作HBase的示例 下面是一个在Windows的Eclipse中通过JAVA操作一个Linux上运行的hbase的示例。Hbase的配置需要注意下面一些要点:1,服务器端用主机名配置hadoop和hbase,不要用IP比如如下: hbase.zookeeper.quorum hadoopsrv 2,hbase运行的机器上的机器名不能叫localhost改/etc/sysc
云计算的三种服务模式:IaaS,PaaS和SaaS 云计算的三种服务模式:IaaS,PaaS和SaaS 云服务”现在已经快成了一个家喻户晓的词了。如果你不知道PaaS, IaaS 和SaaS的区别,那么也没啥,因为很多人确实不知道。 “云”其实是互联网的一个隐喻,“云计算”其实就是使用互联网来接入存储或者运行在远程服务器端的应用,数据,或者服务。 任何一个使用基于互联网的方法来计算,存储和开发的公司,都可以从技术上叫做从事云的公司
HBase伪分布式安装的简单步骤记录 环境RedHat linux 虚拟机 IP 192.168.2.16hadoop-0.20.2hbase-0.92.1用户 hadoop,用户目录 /home/hadoop下载解压到用户目录tar -xzvf hbase-0.92.1.tar.gz设置/home/hadoop/hbase-0.92.1/conf/hbase-env.sh的java homeexp
JAVA API操作HDFS文件系统 一个通过JAVA API操作HDFS文件系统的例子,本例子使用的是hadoop0.20的版本,在windows的eclipse下运行的时候,需要将core-site.xml和hdfs-site.xml放在src/bin目录中。public class TestHDFSFile { private String localPath = "C:/D/JavaWorkSpace/bigdata/
hadoop程序在windows上访问hdfs的问题 hadoop运行在linux上,在window的本地eclips运行java代码,碰到如下的异常,java.lang.IllegalArgumentException: Wrong FS: hdfs:/ expected file:/// Java代码如下: FileSystem fs = FileSystem.get(conf); in = fs.open(ne
Hadoop伪分布式环境搭建 Hadoop伪分布式环境搭建 简单记录hadoop伪分布式环境搭建的步骤软件环境配置VM:VMware-workstation REDHAT linux, ip 192.168.2.6Hadoop:hadoop-0.20.21, 创建一个hadoop用户groupadd hadoopuseradd hadoop -g hadooppasswd hadoop以
创建淘宝开放平台应用的步骤简单记录 记录一下淘宝开放平台应用开发的步骤。1,注册成为开发者,创建一个应用,参照下面的链接如何选择应用http://open.taobao.com/doc/detail.htm?id=101710创建应用的时候有一个回调地址url,回调地址是用来接收TOP(开放平台)返回授权相关数据的,下面是你的应用使用TOP API的流程:在没有上线之前测试都在所谓的沙箱模式下进行的。1,
hadoop的基础思想 转载 http://www.superwu.cn/2014/01/10/9631.1.1. hadoop的核心思想Hadoop包括两大核心,分布式存储系统和分布式计算系统。1.1.1.1. 分布式存储为什么数据需要存储在分布式的系统中哪,难道单一的计算机存储不了吗,难道现在的几个TB的硬盘装不下这些数据吗?事实上,确实装不下。比如,很多的电信通话记录就存储在很多台服务器
基于Hadoop的云盘系统客户端技术难点之三 小文件存储优化 转载 http://www.cnblogs.com/hadoopdev/archive/2013/03/08/2950121.html一、概述首先明确概念,这里的小文件是指小于HDFS系统Block大小的文件(默认64M),如果使用HDFS存储大量的小文件,将会是一场灾难,这取决于HDFS的实现机制和框架结构,每一个存储在HDFS中的文件、目录和块映射为一个对象存储在NameNode服
JAVA多线程的共享数据操作 volatile变量表示变量在被修改后会被立即写回主存,不会被缓存在寄存器或者对其它处理器隐藏的地方。所以,读一个volatile变量时,总会返回有某一线程返回的最新值。如果想通过volatile保证共享数据的正确性,必须保证只有一个线程写,多个线程读。
html页面中访问外站资源的时候协议的问题 当一个网页引用外站的资源的时候,比如JavaScript文件或者CSS文件,最好不要在前面加访问协议,如在 http://www.a.com的页面上引用了一个www.b.com/xxx.js文件。如果写成那么当A站点切换到https协议的时候,由于某些浏览器的安全限制,在https的页面上不允许访问http资源,那么将获取不到这个js文件。最好的做法是在代码中写成如下的形式
JAVA中通过编译时常量控制有的源代码不编译到字节码文件 JAVA在编译过程会对代码进行优化,如果某一行代码永远不可能被执行到,这行代码不会被编译到字节码文件中去。如下面的例子,flag是一个可以在编译阶段就可以确定的值,javac编译的时候不会把System.out.println编译到字节码文件中。public class T { public final static boolean flag = false; p
JAVA class文件中的符号引用 在java代码中,一个类可能使用另外类或者接口的字段或者调用另外一个类的方法。在编译的时候,class文件中是通过叫做"符号引用"的方式来实现的。如下面的例子public interface Intf { public static String str = "abcde"; public static int ival = new Random().nex
JAVA的class文件格式例解 JAVA程序从源代码到运行的一般过程为:JAVA源文件编译之后形成class文件,也就是java字节码文件,然后java虚拟机解释执行java字节码文件。我们来简单看看java字节码文件的格式。下图是java字节码文件的格式的定义。u4代表占4个字节,cp_info表示cp_info结构需要占据的字节,后面会介绍cp_info结构。假设有一个java文件的源代码如下publ
web安全之跨站请求伪造 CSRF(Cross-site request forgery),中文名称:跨站请求伪造.因为这个不是用户真正想发出的请求,这就是所谓的请求伪造;因为这些请求也是可以从第三方网站提交的,所以前缀跨站二字。CSRF发生的场景如下图所示:用户登录访问了一个受信任的站点,在用户还没有退出登录的时候,打开另外一个tab页,访问了网站B。在B网站中,有CSRF攻击代码访问网站A。
JAVA中的字符编码操作 在JAVA源文件-->JAVAC编译-->Class-->Java运行-->getBytes()-->new String()-->显示的过程中,每一步都有编码的转换过程,这个过程总是存在的,只是有的时候用默认的参数进行。在编写JAVA源文件的时候要指定源文件的编码,这里是指源文件的文本以什么编码保存为操作系统中的文件。JAVAC编译的时候要把源文件编译成class文件,先要读取源
中文字符的值在web中提交的问题 URL中出现汉字的情况有两种,一种是汉字出现在URL的路径部分,一种是汉字出现在URL的参数部分。第一种情况依赖于WEB服务器和操作系统是否支持,但是在做WEB应用的时候应该避免这种做法。第二种情况的时候必须采用编码后传参,接受时解码的方式完成参数值的获取。参数可以通过表单提交,浏览器地址栏输入,URL链接点击。下面的这些测试是在tomcat中进行的先来看通过表单post提交的
JS和JAVA中常用的编码转码函数 js中escape,encodeURI,encodeURIComponent函数和unescape,decodeURI和decodeURIComponent函数的功能1.escape方法对String对象编码,escape方法返回一个包含了charstring内容的字符串值(Unicode格式)。所有空格、标点、重音符号以及其他非ASCII字符都用%xx编码代替,其中xx等于表示该字符
一个反射型XSS例子的解析 我们在访问一个网页的时候,在URL后面加上参数,服务器根据请求的参数值构造不同的HTML返回。如http://localhost:8080/prjWebSec/xss/reflectedXSS.jsp?param=value...上例中的value可能出现在返回的HTML(可能是JS,HTML某元素的内容或者属性)中,如果将value改成可以在浏览器中被解释执行的东西,就形成了反射型X
解析如何防止XSS跨站脚本攻击 本文为大家提供了简单的实战模式以防止XSS跨站脚本攻击通过output escaping/encoding发动攻击。虽然存在大量跨站脚本攻击者,不过只要遵守本文提供的几个规则就能有效抵御XSS跨站脚本攻击。 这些规则适用于所有不同类别的XSS跨站脚本攻击,可以通过在服务端执行适当的解码来定位映射的XSS以及存储的XSS,由于XSS也存在很多特殊情况,因此强烈推荐使用解码库。另外,基于XS
杭州旅游全攻略,详细! http://news.gxnews.com.cn/staticpages/20131103/newgx52761395-8895216.shtml杭州旅游攻略(很全面,比较长,耐心看) 杭州地处长江三角洲南翼,杭州湾西端,钱塘江下游,京杭大运河南端,是长江三角洲重要中心城市和中国东南部交通枢纽。杭州市区中心地理坐标为北纬30度16分、东经120度12分。杭州属亚热带季风性气
HTTP请求和响应简介 http请求由三部分组成,分别是:请求行、消息报头、请求正文请求行以一个方法符号开头(GET,POST..),以空格分开,后面跟着请求的URI和协议的版本.HTTP响应也是由三个部分组成,分别是:状态行、消息报头、响应正文下图是一个http post请求和响应的截图:上图是一个表单提交到一个servlet,servlet返回一个响应的截图表单的代码如下userpassw
HTTP协议详解 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。
Web应用中session的实现机制 本文简单介绍一下session的实现机制,示例的片段代码为java环境。在客服端浏览器第一次访问一个URL的时候,服务器在返回的httpresponse header中会带上如下参数告诉浏览器将session的id号作为cookie保存。如下:Set-Cookie:JSESSIONID=98BF5B4E64D1EEFD7477A9544A695336; Path=/prjWeb
Expires,Cache-Control,Last-Modified,ETag Expires、Cache-Control、Last-Modified、ETag都是在http response的返回header中用来控制浏览器客户端缓存行为的。1.Expires在HTTP/1.0中已经定义,Cache-Control:max-age=xxx在HTTP/1.1中才有定义,为了向下兼容,仅使用max-age不够。当某一个web资源被访问后,会被浏览器缓存,在以后对
Nginx上配置虚拟机 基于IP地址的虚拟主机配置,在一台主机上有多个IP的情况。不同的IP对应不同的网站内容,客户端可以通过IP访问不同的网页内容。为服务器添加多个IP地址:ifconfig eth0:1 192.168.2.5 netmask 255.255.255.0 upifconfig eth0:2 192.168.2.6 netmask 255.255.255.0 up在/etc/ng
Nginx笔记 在Linux(RedHat)上yum 安装nginx修改 yum repository:name=nginx repobaseurl=http://nginx.org/packages/mainline/centos/6/$basearch/gpgcheck=0enabled=1yum install nginx
在Linux上配置Apache HTTPS服务 A,创建CA的根证书,利用openssl来制作.CA的根证书用来给WEB服务器签发服务器证书./etc/pki/tls/openssl.conf为openssl的配置文件.1,编辑openssl.conf,修改CA的根目录dir = /etc/pki/CA # Where everything is kept根据如下的配置建立目录和文
Apache 虚拟主机配置实例 基于IP地址的虚拟主机配置,在一台主机上有多个IP的情况。不同的IP对应不同的网站内容,客户端可以通过IP访问不同的网页内容。ifconfig eth0:1 192.168.2.5 netmask 255.255.255.0 upifconfig eth0:2 192.168.2.6 netmask 255.255.255.0 up ServerAdmin webma