- 博客(285)
- 资源 (33)
- 收藏
- 关注
转载 【转载】各种开源协议 GPL、BSD、MIT、Mozilla、Apache、LGPL
Phoenix 采取了一种叫 洁净室 的反向工程方法,即A组工程师研读 IBM 源代码写开发需求和文档,B组工程师从未读过 IBM 源代码的根据A组文档做开发,两组人之间隔着所谓的 中国墙,来阻挡控方律师使用 抄袭 的字眼。1984年5月,Phoenix 发布了自己的 BIOS,并开始授权给兼容机厂商,使得兼容机市场扫清了最后的障碍。世界上的开源许可证,大概有上百种。这是我见过的最简单的讲解,只用两分钟,你就能搞清楚这六种许可证之间的最大区别。有一个帮助你选择开源协议的网站,供大家参考。
2024-12-15 11:00:38
58
转载 【转】PXC集群原理
PXC(Percona XtraDB Cluster)是一个开源的MySQL高可用解决方案。Percona XtraDB Cluster(简称PXC集群)提供了MySQL高可用的一种实现方法。1)集群是有节点组成的,推荐配置至少3个节点,但是也可以运行在2个节点上。2)每个节点都是普通的mysql/percona服务器,可以将现有的数据库服务器组成集群,反之,也可以将集群拆分成单独的服务器。3)每个节点都包含完整的数据副本。
2023-11-06 13:33:41
1474
原创 shell获取脚本(子脚本)绝对路径的方法
在最外层脚本(记为a.sh)中,可以适用如下参数获取脚本路径:basepath=$(cd `dirname $0`; pwd)但是,如果脚本内source其他脚本(记为b.sh),b.sh脚本内通过上述命令获取的路径,就是父脚本的路径,而不是b.sh的路径了,可以在b.sh内通过如下方式获取b.sh的路径:bashpath=$(cd $(dirname ${BASH_SOURCE[0]}) && pwd)当然,第二种方法,完全可以用在父脚本、子脚本、孙脚本等各级中,并且获取到
2021-11-25 18:20:45
1769
原创 Idea导入的项目不展示目录结构,只展示第一层目录下的文件问题解决
【问题现象】:Idea导入的项目,某天突然看到project左边栏不展示 文件夹目录结构,只能展示第一层目录下的文件【解决】: 将项目第一层目录下的.idea隐藏目录(显示隐藏目录的方法很好找,此处不再赘述)删掉,然后点击File-open...-选择项目第一层目录重新导入即可。...
2021-11-12 10:24:32
4388
2
原创 clickhouse20.3.19.4-ARM版本简单修改重新编译,以支持kafka引擎表
clickhouse20.3.19.4的ARM版本默认是不支持kafka引擎表的,记得大概是从21.2(具体v21.2.2.8-stable,2021-02-07)才开始允许在ARM64上编译时支持kafka。在ARM服务器下的编译过程,可参考大神的博客:传送门。下面简单介绍一下怎么利用新版本代码合入20版本,以支持kafka引擎表(!!注意:这么编译出来的版本,不支持自定义分隔符,也就是说,建kafka引擎表时,不能识别format_csv_delimiter参数):如下示例中,我的编译环境代码放在/
2021-06-28 18:08:02
1199
3
原创 在kylin-ARM系统上的neokylin容器中构建clickhouse-21.3.12.2-lts
之所以要在容器内编译,主要是一台arm编译服务器大家共用,避免一些编译工具包的安装影响其他人编译,所以在容器内进行。下面正式开始:目录本机更改docker镜像源本机更改docker镜像源vi /etc/docker/daemon.json { "registry-mirrors": [ "https://mirrors.huaweicloud.com/" "https://registry.docker-cn.com", "http:...
2021-06-28 17:41:04
1037
5
原创 Postgresql查询表字段及约束的SQL(生成数据字典)
Postgresql查询表字段及约束的SQL(只能显示当前数据库下的所有模式和表,不同数据库实例需要各自连接并查询)select ns.nspname,cl.relname as table_name,cast(obj_description(cl.relfilenode,'pg_class') as varchar) as "表注释",a.attname as column_name,format_type(a.atttypid,a.atttypmod) as data_type,(cas
2021-01-16 13:27:50
1745
原创 CentOS7配置单向免密码登陆及不生效问题解决
1、配置免密登录:#在本机(此主机名记为 nodeA)自动以rsa算法生成公私钥对ssh-keygen -t rsa -f /root/.ssh/id_rsa -P ""#配置公钥到其他节点(此主机名记为 nodeB),输入对方密码即可完成从nodeA到nodeB的免密访问ssh-copy-id nodeB#如果想要双向免密,需要在nodeB上生成公私钥对,然后将其公钥配置到no...
2018-12-26 16:40:05
8794
原创 [oracle] count()函数使用错误字段导致的查询失败(聚合函数聚合字段与分组字段不一致)
一 错误的SQL语句(原始的,格式是直接从word中拷贝的,存在多个错误):select to_char(t.fbsj, 'YYYY') as a, count(t.fbsj) from (select fbsj from ods_t_ky_lw where to_char(FBSJ, 'YYYY') <= to_char(sysdate, 'YYYY')...
2018-11-15 11:47:59
1734
原创 Python安装一些包时用到的系统层面的依赖
注:以下解决方法均以CentOS7.3环境(已配置好可用yum源)为例,其他操作系统可能会有所区别。【1】、安装cffi报错:c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory解决:执行 yum install libffi-devel 后再尝试安装。【2】、安装cryptography报错:...
2018-10-29 17:35:42
563
原创 执行yum命令报except KeyboardInterrupt, e: 错
升级完python后(python2升级到python3,并且将原来的/usr/bin下的python软连接给替换成python3的了),执行yum安装或查看命令都会产生这个错误:[root@localhostbin]#yum File"/usr/bin/yum",line30 exceptKeyboardInterrupt,e: ...
2018-09-28 23:22:06
7251
2
原创 python脚本1
import randomimport os#文件目录data_dir="/home/data"isExists=os.path.exists(data_dir)if not isExists: os.makedirs(data_dir) print("Dir '"+data_dir+"' Created")#每个批次数据量data_numspertime=240...
2018-09-18 22:57:14
380
转载 \x与\u编码的区别,并使用python对其进行转换
首先前面的 \表示转义,\x:只是 16 进制的意思,后边跟两位,则表示单字节编码;\d:十进制;\o:八进制;对于 \xaa ⇒ chr(0xaa) ⇒ chr(16*a+a)>> str1='\xE4\xB8\x89\xE7\xBA\xA7\xE8\x8A\x82\xE7\x82\xB9'>> print unicode(str1,'utf-8')\u:unicode ...
2018-04-09 10:59:22
55838
2
转载 linux下进程和线程状态查看
检查 使用 ps -fe |grep programname 查看获得进程的pid,再使用 ps -Lf pid 查看对应进程下的线程数.查找资料发现可以通过设置 ulimit -s 来增加每进程线程数。 每进程可用线程数 = VIRT上限/stack size 32位x86系统默认的VIRT上限是3G(内存分配的3G+1G方式),64位x86系统默认的VIRT上限是64G
2017-09-05 10:28:45
44590
转载 对HAWQ进行TPC-DS测试
hawk跑TPC-DS创建文件夹,把TPC工具放入cd /tpcds/v2.1.0/tools/ ./dsdgen -DIR /opt/3t_data -SCALE 3000-parallel 20 -child 20 -TERMINATE N[root@node2 /]# mkdir tpcds_3t[root@node2 /]# lsbin boot
2017-01-14 16:33:37
2634
转载 如何进行TPS-DS测试
1 简介随着开源Hapdoop、Map/Reduce、Spark、HDFS、HBASE等技术的商用化,大数据管理技术得到了突飞猛进的发展。如何客观地比较不同数据管理系统,即大数据测试基准的选择,成为一个重要的研究课题。事务性能管理委员会(TransactionProcessing Performance Council,TPC),是目前最知名的非赢利的数据管理系统评测基准标准化组织
2017-01-14 14:47:33
8349
转载 tpc-ds99 工具使用
安装部署 tpc-ds-99 工具解压文件unzip tpc-ds-tool.zip进入目录cd v2.3.0/tools拷贝Makefile文件cp Makefile.suite Makefile源码包缺少一个tokenizer.c 文件,作者从老版本的tpc-ds 包中找到放进去了,后附tokenizer.c 源码编译
2017-01-14 14:25:50
1277
转载 TPC-DS 生成数据
简介其实,使用 TPC-DS 生成系统性能测试的数据,说简单也简单,说难,确实也不好做!关键是在每一步的操作中,如果遇到了问题,该怎么样处理,这个是个问题的关键。下面就将生成的步骤简单描述一下,好记性不如烂笔头呀!生成步骤1.在官网上(http://www.tpc.org/tpcds/ )去下载最新的:TPC-DS. 2.解压: 下载的 zip 文件放在
2017-01-14 14:20:32
5090
原创 通过VNC安装oracle方法
环境:centos6.5最小安装版一、安装vnc和gnome桌面前提:已配置好yum源,yum源中存在tigervnc-server包和GNOME桌面组包(或者是包含KDE Desktop组包也行)。安装桌面:yum grouplist#查看yum组包中是否包含上述两个组包中的一个或两个yum groupinstall -y "KDE Desktop" #安装KDE桌
2016-11-26 16:57:05
2558
1
转载 认识多任务、多进程、单线程、多线程
要认识多线程就要从操作系统的原理说起。 以前古老的DOS操作系统(V 6.22)是单任务的,还没有线程的概念,系统在每次只能做一件事情。比如你在copy东西的时候不能rename文件名。为了提高系统的利用效率,采用批处理来批量执行任务。 现在的操作系统都是多任务操作系统,每个运行的任务就是操作系统所做的一件事情,比如你在听歌的同时还在用MSN和好友聊天。听歌和聊天就是两个任
2016-10-24 14:08:32
2197
转载 linux下杀死进程(kill)的N种方法 包括python–killproc
使用 pip 安装一般的杀死进程过程如下$ ps -ef | grep django-admin.py | grep -v grep501 20060 1 0 0:00.11 ttys001 0:00.38 python django-admin.py runserver 0.0.0.0:8002501 20063 20060 0 0:00.35 t
2016-09-19 16:22:08
20448
1
转载 JMeter学习笔记--详解JMeter配置元件
JMeter配置元件可以用来初始化默认值和变量,以便后续采样器使用。将在其作用域的初始化阶段处理。CSV Data Set Config:被用来从文件中读取数据,并将它们拆分后存储到变量中,适合处理众多变量Variable Names:变量名列表(逗号分隔)。JMeter2.3.4以后的版本,支持CSV标题行,如果变量名为空,那么文件的第一行将被读取,并被解释为列名的列表。这些变量
2016-09-14 17:08:48
9373
转载 MYSQL性能查看(命中率,慢查询)
网上有很多的文章教怎么配置MySQL服务器,但考虑到服务器硬件配置的不同,具体应用的差别,那些文章的做法只能作为初步设置参考,我们需要根据自己的情况进行配置优化,好的做法是MySQL服务器稳定运行了一段时间后运行,根据服务器的”状态”进行优化。 mysql> show global status; 可以列出MySQL服务器运行各种状态值,另外,查询MySQL服务器配置信息语句:
2016-09-14 16:31:33
3088
转载 Jmeter线程组设置
添加线程组:右键测试计划->添加->Threads->线程组线程组设置" title="Jmeter 线程组设置" height="257" width="690">左侧树形标签栏中,显示标签信息。选中线程组,右侧内容栏中显示线程组的相关信息。名称:可以给线程组设置一个个性化的命名,注意尽量不要使用中文(测试计划也是),在linux上通过no-g
2016-09-14 15:06:13
24552
转载 JMeter 集合点设置之Synchronizing Timer的使用
Jmeter集合点是通过Synchronizing Timer这个定时器来实现的,虽然简单,但是在使用的时候需要注意一些点,下面详细说明。1、布局设置 集合点设置之Synchronizing Timer的使用" title="JMeter 集合点设置之Synchronizing Timer的使用" height="190" width="558">注:1.把Sync
2016-09-14 10:52:47
6314
转载 TPS和事务响应时间的关系、计算公式
例子:一个高速路有10个入口,每个入口每秒钟只能进1辆车1、请问1秒钟最多能进几辆车? TPS=102、每辆车需要多长时间进行响应? reponse time = 13、改成20辆车,每秒能进几辆?每辆车的响应时间是多长? TPS = 10,reponse time = 1 (10个为一等份,分成两等份,平均tps (10/1+10/2)/2=7.5 平均响应
2016-09-08 10:24:11
64573
2
转载 java内存泄漏分类及避免
要点内存泄露是指程序中间动态分配了内存,但在程序结束时没有释放这部分内存,从而造成那部分内存不可用的情况,重启计算机可以解决,但也有可能再次发生内存泄露,内存泄露和硬件没有关系,它是由软件设计缺陷引起的。 内存泄漏可以分为4类: 1) 常发性内存泄漏。发生内存泄漏的代码会被多次执行到,每次被执行的时候都会导致一块内存泄漏。2) 偶发性内存泄漏。发生内存泄漏的代码只有在某些特定环境或
2016-09-06 20:39:22
3079
转载 Java性能优化全攻略
让Java应用程序运行是一回事,但让他们跑得快就是另外一回事了。在面对对象的环境中,性能问题就像来势凶猛的野兽。但JVM的复杂性将性能调整的复杂程度增加了一个级别。这里Refcard涵盖了JVM internals、class loading(Java8中更新以映射最新的元空间)、垃圾回收、故障诊断、检测、并发性,等等。介绍Java是目前软件开发领域中使用最广泛的编程语言之
2016-09-06 20:17:21
9177
转载 安全测试常用几个工具
下面介绍了这些工具的主要功能以及教程、书籍、视频等。端口扫描器:NmapNmap是"Network Mapper"的缩写,众所周知,它是一款非常受欢迎的免费开源黑客工具。Nmap被用于发现网络和安全审计。据数据统计,全世界成千上万的系统管理员使用nmap发现网络、检查开放端口、管理服务升级计划,以及监视主机或服务的正常运行时间。Nmap是一种使用原始IP数据包的工具,以非常创新的方
2016-09-06 20:13:25
57808
转载 Web端&移动端测试的区别
之前参加的项目有涉及Web端测试和移动端测试,简单的记录下他们之间的区别:记录bug在Web端可以通过系统自带的截图和QQ截图等方式来截取bug的图片,对于错误的地方可以用工具自带的标识来重点标记。对于移动端设备可以用手机自带的截图工具来截图然后传到电脑上,个人一般习惯安装微信的windows版本,通过文件传输助手发送到PC端。还有一种比较便捷的方式,将手机用数据线连接到电脑,本地配置
2016-09-06 20:10:06
2459
转载 12款最常用的Java测试工具
Parasoft JtestJtest是Parasoft公司推出的一款针对java语言的自动化白盒测试工具,它通过自动实现java的单元测试和代码标准校验,来提高代码的可靠性。AbbotAbbot是一款测试Java GUIs的JUnit扩展程序。JProfilerJProfiler是一个全功能的Java剖析工具(profiler),主要用于检查和跟踪系统(限于Java开发的
2016-09-06 20:03:25
20941
转载 九大Java性能优化工具
在这篇文章中,我会带着大家一起看一下9个可以帮助我们优化Java性能的工具。有一些我们已经在IDR Solutions中使用了,而另外一些有可能在个人项目中使用。NetBeans ProfilerNetBeans profiler 是一个NetBeans IDE插件,主要为NetBeans IDE提供性能分析相关的功。NetBeans IDE是一个开源的集成开发环境。它很好地支持所有J
2016-09-06 20:00:39
4064
转载 jprofiler主要功能简介及内存泄漏分析示例
一、安装JProfiler 从http://www.ej-technologies.com/下载5.1.2并申请试用序列号 二、主要功能简介1.内存剖析 Memory profiler JProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。
2016-09-06 19:47:18
12100
转载 单机最大tcp连接数
单机最大tcp连接数网络编程 在tcp应用中,server事先在某个固定端口监听,client主动发起连接,经过三路握手后建立tcp连接。那么对单机,其最大并发tcp连接数是多少?如何标识一个TCP连接在确定最大连接数之前,先来看看系统如何标识一个tcp连接。系统用一个4四元组来唯一标识一个TCP连接:{local ip, local port,remote ip,remote
2016-09-01 15:13:24
28231
转载 loadrunner的socket脚本编写技巧
编写步骤1.建立与服务端的连接rc=lrs_create_socket(“socket0”,”TCP”,”LocalHost=0”,”RemoteHost=127.0.0.1:8808”,LrsLastArg);服务端地址和端口号连接是否成功?rc=0 表示建立连接成功 2.发送报文和接收报文Lrs_send(“socket0”,”buf0”,LrsLastArg)
2016-09-01 14:59:22
6242
转载 socket跟TCP/IP 的关系,单台服务器上的并发TCP连接数可以有多少
常识一:文件句柄限制在linux下编写网络服务器程序的朋友肯定都知道每一个tcp连接都要占一个文件描述符,一旦这个文件描述符使用完了,新的连接到来返回给我们的错误是“Socket/File:Can'topen so many files”。这时你需要明白操作系统对可以打开的最大文件数的限制。进程限制执行ulimit -n 输出1024,说明对于一个进程而言最多只
2016-09-01 10:04:16
20138
5
转载 长连接和Keepalive详解
TCP协议中有长连接和短连接之分。短连接在数据包发送完成后就会自己断开,长连接在发包完毕后,会在一定的时间内保持连接,即我们通常所说的Keepalive(存活定时器)功能。默认的Keepalive超时需要7,200,000 milliseconds,即2小时,探测次数为5次。它的功效和用户自己实现的心跳机制是一样的。开启Keepalive功能需要消耗额外的宽带和流量,尽管这微不足道,但在按流量
2016-09-01 09:58:26
8875
原创 tcpdump抓包示例
抓包:tcpdump -i eth1 -s0 src host 10.10.10.66 and dst host 10.10.10.67 and port \( 8183 or 8184 \) -w atcplink.cap -vv读取抓到的包:strings atcplink.cap
2016-08-31 16:36:08
733
转载 TCP/IP TIME_WAIT状态原理(四次握手关闭连接原理)
TIME_WAIT状态原理----------------------------通信双方建立TCP连接后,主动关闭连接的一方就会进入TIME_WAIT状态。客户端主动关闭连接时,会发送最后一个ack后,然后会进入TIME_WAIT状态,再停留2个MSL时间(后有MSL的解释),进入CLOSED状态。下图是以客户端主动关闭连接为例,说明这一过程的。 TIME
2016-08-24 10:48:41
4433
jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.z02
2012-12-21
jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.z01
2012-12-21
SecureCRT+注册机+使用方法
2012-12-21
PL/SQL developer中文版
2012-12-21
PL/SQL developer安装包+汉化包+sn
2012-12-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人