1 简介

Pentaho是世界上最流行的开源商务智能软件,以工作流为核心的,强调面向解决方案而非工具组件的,基于java平台的商业智能(Business Intelligence,BI)套件BI,之所以说是套件是因为它包括一个web server平台和几个工具软件:报表,分析,图表,数据集成,数据挖掘等,可以说包括了商务智能的方方面面。它整合了多个开源项目,目标是和商业BI相抗衡。它偏向于与业务流程相结合的BI解决方案,侧重于大 中型企业应用。它允许商业分析人员或开发人员创建报表,仪表盘,分析模型,商业规则和 BI 流程。

注:以上感觉高大上,但笔者比较鄙视Pentaho这个项目,从布署的角度看,完全没有支撑该项目的标准文档,只有零星的资料,要部署好只能靠反复测试和摸索。

2 实践部分

2.1 环境部分

2.1.1 运行环境

IP Address = 10.168.0.76

HostName = pentaho.cmdschool.org

OS = CentOS 7.3

2.1.2 安装辅助工具

yum install -y unzip

2.1.3 配置防火墙

firewall-cmd --permanent --add-port 8080/tcp
firewall-cmd --reload
firewall-cmd --list-all

2.2 MySQL配置

2.2.1 配置MySQL的源

vim /etc/yum.repos.d/mysql56-community.repo

输入如下内容:

# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://repo.mysql.com/RPM-GPG-KEY-mysql

2.2.2 安装相关包

yum install -y mysql-community-server mysql-community-devel mysql-community-client

2.2.3 启动并配置默认开机启动

systemctl start mysqld
systemctl enable mysqld

2.2.4 初始化数据库

mysql_secure_installation

向导如下:

[...]
Set root password? [Y/n] y
New password:
Re-enter new password:
[...]
Remove anonymous users? [Y/n] y
[...]
Disallow root login remotely? [Y/n] n
[...]
Remove test database and access to it? [Y/n] y
[...]
Reload privilege tables now? [Y/n] y
[...]

2.3 Java配置

2.3.1 创建java目录

mkdir /usr/java

2.3.2 下载JDK

cd /usr/java
wget http://download.oracle.com/otn/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.tar.gz?AuthParam=1495873209_eea482e2b59774918c970cf5dc383fdb

2.3.3 解压安装包

tar -xf jdk-8u121-linux-x64.tar.gz

2.3.4 配置环境变量

vim /etc/profile

末尾加入如下内容:

export JAVA_HOME=/usr/java/jdk1.8.0_121
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

2.3.5 使环境变量生效

source /etc/profile

2.3.6 测试环境变量

java -version

2.4 Pentaho安装包配置

2.4.1 下载程序包

mkdir /usr/pentaho
cd /usr/pentaho
wget https://nchc.dl.sourceforge.net/project/pentaho/Business%20Intelligence%20Server/7.0/pentaho-server-ce-7.0.0.0-25.zip
wget https://nchc.dl.sourceforge.net/project/pentaho/Data%20Integration/7.0/pdi-ce-7.0.0.0-25.zip
wget https://nchc.dl.sourceforge.net/project/pentaho/Report%20Designer/7.0/prd-ce-7.0.0.0-25.zip

注:下载链接,https://sourceforge.net/projects/pentaho/files/

2.4.2 解压程序包

unzip pentaho-server-ce-7.0.0.0-25.zip
unzip pdi-ce-7.0.0.0-25.zip
unzip prd-ce-7.0.0.0-25.zip

2.4.3 更换mysql连接驱动

cd ~
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.41.tar.gz
tar -xf mysql-connector-java-5.1.41.tar.gz
cp mysql-connector-java-5.1.41/mysql-connector-java-5.1.41-bin.jar /usr/pentaho/pentaho-server/tomcat/lib/
mv /usr/pentaho/pentaho-server/tomcat/lib/mysql-connector-java-5.1.17.jar ~/

注:下载链接,https://dev.mysql.com/downloads/connector/j/

2.4.4 修改Tomcat运行环境变量

vim /usr/pentaho/pentaho-server/tomcat/bin/setenv.sh

修改内容如下:

export JAVA_HOME=/usr/java/jdk1.8.0_121
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
export PENTAHO_JAVA_HOME=${JAVA_HOME}
export INSTALL_HOME=/usr/pentaho/pentaho-server
export DI_HOME=${INSTALL_HOME}/pentaho-solutions/system/kettle
export CATALINA_OPTS="-Xms4096m -Xmx6144m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -DDI_HOME=$DI_HOME"

2.4.5 创建程序运行用户

useradd -s /sbin/nologin -b /usr/pentaho

确认用户家目录

ls -ld /usr/pentaho

2.4.6 预配置esapi目录

mkdir /usr/pentaho/esapi

2.4.7 配置目录权限

chown -R pentaho:pentaho /usr/pentaho/
chmod -R 770 /usr/pentaho

2.5 数据库服务配置

2.5.1 修改quartz库的授权

vim /usr/pentaho/pentaho-server/data/mysql5/create_quartz_mysql.sql

注释掉如下行:

# grant all on quartz.* to 'pentaho_user'@'localhost' identified by 'password';

2.5.2 修改hibernate库的授权

vim /usr/pentaho/pentaho-server/data/mysql5/create_repository_mysql.sql

注释掉如下行:

# GRANT ALL ON hibernate.* TO 'hibuser'@'localhost' identified by 'password';

2.5.3 修改jackrabbit库的授权

vim /usr/pentaho/pentaho-server/data/mysql5/create_jcr_mysql.sql

注释掉如下行:

# grant all on jackrabbit.* to 'jcr_user'@'localhost' identified by 'password';

2.5.4 导入数据库

mysql -uroot -p < /usr/pentaho/pentaho-server/data/mysql5/create_quartz_mysql.sql
mysql -uroot -p < /usr/pentaho/pentaho-server/data/mysql5/create_repository_mysql.sql
mysql -uroot -p < /usr/pentaho/pentaho-server/data/mysql5/create_jcr_mysql.sql

2.5.5 配置数据库权限

mysql -uroot -p
grant all on quartz.* to 'pentaho'@'localhost' identified by 'passwd';
grant all on hibernate.* to 'pentaho'@'localhost' identified by 'passwd';
grant all on jackrabbit.* to 'pentaho'@'localhost' identified by 'passwd';
flush privileges;

2.5.6 测试数据库

mysql -upentaho -ppasswd

2.6 迁移数据库等配置

2.6.1 配置Quartz

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/quartz/quartz.properties pentaho-solutions/system/quartz/quartz.properties.default
vim pentaho-solutions/system/quartz/quartz.properties

修改并启用如下参数:

org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
org.quartz.dataSource.myDS.jndiURL = Quartz

2.6.2 配置hibernate数据源

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/hibernate/mysql5.hibernate.cfg.xml pentaho-solutions/system/hibernate/mysql5.hibernate.cfg.xml.default
vim pentaho-solutions/system/hibernate/mysql5.hibernate.cfg.xml

修改如下标签参数:

<property name="connection.username">pentaho</property>
<property name="connection.password">passwd</property>

2.6.3 配置Hibernate

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/hibernate/hibernate-settings.xml pentaho-solutions/system/hibernate/hibernate-settings.xml.default
vim pentaho-solutions/system/hibernate/hibernate-settings.xml

修改如下标签参数:

<config-file>system/hibernate/mysql5.hibernate.cfg.xml</config-file>

2.6.4 配置审计日志

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/audit_sql.xml pentaho-solutions/system/audit_sql.xml.default
cp pentaho-solutions/system/dialects/mysql5/audit_sql.xml pentaho-solutions/system/

2.6.5 配置repository.xml

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/jackrabbit/repository.xml pentaho-solutions/system/jackrabbit/repository.xml.default
vim pentaho-solutions/system/jackrabbit/repository.xml

注解以下标签和内容:

  <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"><param name="path" value="${rep.home}/repository"/></FileSystem>

去掉以下标签和内容注解并修改账号密码:

  <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="pentaho"/><param name="password" value="passwd"/><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="fs_repos_"/></FileSystem>

注解以下标签和内容:

  <DataStore class="org.apache.jackrabbit.core.data.FileDataStore"/>

去掉以下标签和内容注解并修改账号密码:

  <DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore"><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="pentaho"/><param name="password" value="passwd"/><param name="databaseType" value="mysql"/><param name="driver" value="com.mysql.jdbc.Driver"/><param name="minRecordLength" value="1024"/><param name="maxConnections" value="3"/><param name="copyWhenReading" value="true"/><param name="tablePrefix" value=""/><param name="schemaObjectPrefix" value="ds_repos_"/></DataStore>

注解以下标签和内容:

    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"><param name="path" value="${wsp.home}"/></FileSystem>

去掉以下标签和内容注解并修改账号密码:

    <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="pentaho"/><param name="password" value="passwd"/><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="fs_ws_"/></FileSystem>

注解以下标签和内容:

    <PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.H2PersistenceManager"><param name="url" value="jdbc:h2:${wsp.home}/db"/><param name="schemaObjectPrefix" value="${wsp.name}_"/></PersistenceManager>

去掉以下标签和内容注解并修改账号密码:

    <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="pentaho" /><param name="password" value="passwd" /><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="${wsp.name}_pm_ws_"/></PersistenceManager>

注解以下标签和内容:

    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem"><param name="path" value="${rep.home}/version" /></FileSystem>

去掉以下标签和内容注解并修改账号密码:

    <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="pentaho"/><param name="password" value="passwd"/><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="fs_ver_"/></FileSystem>

注解以下标签和内容:

    <PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.H2PersistenceManager"><param name="url" value="jdbc:h2:${rep.home}/version/db"/><param name="schemaObjectPrefix" value="version_"/></PersistenceManager>

去掉以下标签和内容注解并修改账号密码:

    <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager"><param name="driver" value="com.mysql.jdbc.Driver"/><param name="url" value="jdbc:mysql://localhost:3306/jackrabbit"/><param name="user" value="pentaho" /><param name="password" value="passwd" /><param name="schema" value="mysql"/><param name="schemaObjectPrefix" value="pm_ver_"/></PersistenceManager>

2.6.6 配置Tomcat的JDBC连接信息context.xml

cd /usr/pentaho/pentaho-server/
cp tomcat/webapps/pentaho/META-INF/context.xml tomcat/webapps/pentaho/META-INF/context.xml.default
vim tomcat/webapps/pentaho/META-INF/context.xml

修以下配置:

                maxWaitMillis="10000" username="pentaho" password="passwd"driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/hibernate"validationQuery="select 1" />maxWaitMillis="10000" username="pentaho" password="passwd"driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/quartz"validationQuery="select 1"/>

2.6.7 配置web.xml

cd /usr/pentaho/pentaho-server
cp tomcat/webapps/pentaho/WEB-INF/web.xml tomcat/webapps/pentaho/WEB-INF/web.xml.default
vim tomcat/webapps/pentaho/WEB-INF/web.xml

删除以下标签和配置:

  <!-- [BEGIN HSQLDB DATABASES] --><context-param><param-name>hsqldb-databases</param-name><param-value>sampledata@../../data/hsqldb/sampledata,hibernate@../../data/hsqldb/hibernate,quartz@../../data/hsqldb/quartz</param-value></context-param><!-- [END HSQLDB DATABASES] -->

删除以下标签和配置:

  <!-- [BEGIN HSQLDB STARTER] --><listener><listener-class>org.pentaho.platform.web.http.context.HsqldbStartupListener</listener-class></listener><!-- [END HSQLDB STARTER] -->

2.6.8 配置applicationContext-spring-security-hibernate.properties(可选)

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/applicationContext-spring-security-hibernate.properties pentaho-solutions/system/applicationContext-spring-security-hibernate.properties.defautl
vim pentaho-solutions/system/applicationContext-spring-security-hibernate.properties

修改如下参数:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/hibernate
jdbc.username=pentaho
jdbc.password=passwd
hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect

2.6.9 配置applicationContext-spring-security-jdbc.properties(可选)

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/applicationContext-spring-security-jdbc.properties pentaho-solutions/system/applicationContext-spring-security-jdbc.properties.default
vim pentaho-solutions/system/applicationContext-spring-security-jdbc.properties

修改如下参数:

datasource.driver.classname=com.mysql.jdbc.Driver
datasource.url=jdbc:mysql://localhost:3306/hibernate
datasource.username=pentaho
datasource.password=passwd
datasource.validation.query=SELECT 1

2.6.10 配置jdbc.properties(可选)

cd /usr/pentaho/data-integration
cp simple-jndi/jdbc.properties simple-jndi/jdbc.properties.default
vim simple-jndi/jdbc.properties

注释掉原来参数并增加如下参数且修改账号密码:

SampleData/type=javax.sql.DataSource
SampleData/driver=com.mysql.jdbc.Driver
SampleData/url=jdbc:mysql://localhost:3306/hibernate
SampleData/user=pentaho
SampleData/password=passwd
Hibernate/type=javax.sql.DataSource
Hibernate/driver=com.mysql.jdbc.Driver
Hibernate/url=jdbc:mysql://localhost:3306/hibernate
Hibernate/user=pentaho
Hibernate/password=passwd
Quartz/type=javax.sql.DataSource
Quartz/driver=com.mysql.jdbc.Driver
Quartz/url=jdbc:mysql://localhost:3306/quartz
Quartz/user=pentaho
Quartz/password=passwd
Shark/type=javax.sql.DataSource
Shark/driver=com.mysql.jdbc.Driver
Shark/url=jdbc:mysql://localhost:3306/hbibernate
Shark/user=pentaho
Shark/password=passwd
SampleDataAdmin/type=javax.sql.DataSource
SampleDataAdmin/driver=com.mysql.jdbc.Driver
SampleDataAdmin/url=jdbc:mysql://localhost:3306/hibernate
SampleDataAdmin/user=pentaho
SampleDataAdmin/password=passwd

2.6.11 配置pentaho.xml(可选)

cd /usr/pentaho/pentaho-server/
cp pentaho-solutions/system/pentaho.xml pentaho-solutions/system/pentaho.xml.defautl
vim pentaho-solutions/system/pentaho.xml

修改如下配置:

<login-show-users-list>false</login-show-users-list>
<login-show-sample-users-hint>false</login-show-sample-users-hint>

注解或删除如下配置:

  <sampledata-datasource><name>SampleData</name><host>localhost</host><type>Hypersonic</type><port>9001</port><access>NATIVE</access><username>pentaho_user</username><password>password</password><max-active>20</max-active><max-idle>5</max-idle><max-wait>1000</max-wait><query>select count(*) from INFORMATION_SCHEMA.SYSTEM_SEQUENCES</query></sampledata-datasource>

2.7 测试和配置服务启动

2.7.1 测试服务启动

sudo -u pentaho /usr/pentaho/pentaho-server/tomcat/bin/startup.sh

2.7.2 监视日志排错

建议监控如下日志:

tail -f /usr/pentaho/pentaho-server/tomcat/logs/catalina.out

建议搜索如下日志:

grep -i -E "error|fail" /usr/pentaho/pentaho-server/tomcat/logs/catalina.out | sort -u

2.7.3 网页测试

http://10.168.0.76:8080/pentaho

参阅资料:

=================================================

安装教程:

https://help.pentaho.com/Documentation/7.0

其他参考资料:

http://www.cnblogs.com/driftingshine/p/6065454.html

http://community.pentaho.com/

驱动下载链接:

http://www.oracle.com/technetwork/apps-tech/jdbc-112010-090769.html

http://www.oracle.com/technetwork/database/features/jdbc/jdbc-ucp-122-3110062.html

ojdbcx.jar, ora18n.jar

启动安装教程:

https://help.pentaho.com/Documentation/7.0/0D0/160/010#Oracle

LDAP项目:

https://help.pentaho.com/Documentation/7.0/0P0/Setting_Up_User_Security/Implement_Advanced_Security/010

https://help.pentaho.com/Documentation/7.0/0P0/Setting_Up_User_Security/Implement_Advanced_Security/030

下载页面:

https://sourceforge.net/projects/pentaho/files/

手动LDAP配置:

https://help.pentaho.com/Documentation/7.0/0P0/Setting_Up_User_Security/Implement_Advanced_Security/030

http://diethardsteiner.github.io/biserver/2014/11/08/LDAP.html

切换到LDAP:

https://help.pentaho.com/Documentation/7.0/0P0/Setting_Up_User_Security/Implement_Advanced_Security/010

LDAP界面配置:

https://help.pentaho.com/Documentation/7.0/0P0/Setting_Up_User_Security/Implement_Advanced_Security/010

http://wiki.pentaho.com/display/ServerDoc2x/Using+LDAP+and+JDBC+Simultaneously

Jar下载:

http://mvnrepository.com/

安装文档:

https://help.pentaho.com/Documentation/7.0/0F0/0P0/Starting_the_Pentaho_Server_after_Manual_Installation

https://help.pentaho.com/Documentation/7.0/0F0/0P0/020/0B0

数据库配置:

https://help.pentaho.com/Documentation/7.0/0F0/0P0/030/020

转载于:https://blog.51cto.com/cmdschool/1933360

开源商务智能软件Pentaho相关推荐

  1. 开源ETL软件在智能化集成系统中的应用

    来源:http://www.qianjia.com/html/2009-03/57084.html 摘要:提出了在智能化集成系统中通过开源ETL软件Kettle对数据库类型的子系统进行信息采集的方案, ...

  2. 开源之旅之开源企业软件采购指南

    开源之旅之开源企业软件采购指南 ( 2006-02-06 10:31:09)   [导读]:从开源数据库.应用服务器,到开源的Web服务器,我们已经带您领略开源软件世界的旖旎风光.此次的"开 ...

  3. 盘点世界排名最前的5款开源ERP软件

    盘点世界排名最前的5款开源ERP软件 盘点世界排名最前的5款开源ERP软件 « 于: 十一月 03, 2012, 11:15:42 下午 » 引用 Add Multi Quote Remove Mul ...

  4. 开源项目管理软件,团队协作配合新方式

    如果你对开源项目管理软件感兴趣,又需要敏捷开发功能,建议试试智办事. 智办事契合团队OKR管理,支持多任务创建,分解成父子级任务,帮助每个人更直观看到各种内容和进展情况,数据全流程沉淀,方便后续查找和 ...

  5. 跟我学,轻松安装开源ERP软件Open ERP

    跟我学,轻松安装开源ERP软件Open ERP http://www.linuxeden.com/html/solution/20090701/66521.html Open ERP原名Tiny ER ...

  6. 收集的网络上大型的开源图像处理软件代码(提供下载链接)

    要写好一个图像处理软件,仅靠自己看书是完全不够的,要多方面学习,借鉴前人的经验,要集思广益.多面出击.如今网络发达,图像学的资料其实也到处都是.只是往往个人能力或精力有限,在短时间内无法找到那些也许藏 ...

  7. 安装linux办公软件,Centos7如何安装开源办公软件Libreoffice

    在Centos7安装了WPS,但是用了没两月就出问题,无法正常使用.(准确来说,安装的WPS一直都有各种问题存在,但是没有影响到主要功能也就将就着用,后来是直接输入不了文字) 既然是开源系统,自然而然 ...

  8. puppet开源的软件自动化配置和部署工具——本质就是CS,服务端统一管理配置...

    1.  概述 puppet是一个开源的软件自动化配置和部署工具,它使用简单且功能强大,正得到了越来越多地关注,现在很多大型IT公司均在使用puppet对集群中的软件进行管理和部署,如google利用p ...

  9. 这13个开源GIS软件,你了解几个?【转】

    泰伯网有看点的空间地理信息资讯都在这,你还在等什么? 这些开源GIS软件,你了解几个?本文内容部分来源于一份罗列了关于GIS软件应用的文章,笔者将其编译整合. 地理信息系统(Geographic In ...

最新文章

  1. IIS7.5+WebConfig实现页面伪静态和301重定向
  2. oracle表行列权限,Oracle行列互换 横表和纵表
  3. CAN总线的初步认识
  4. linux sshd启动失败 sshd re-exec requires execution with an absolute path
  5. 计算机论文搜索技巧【二】
  6. 美团取消支付宝支付引关注,称饿了么也不支持微信支付,饿了么回应绝了
  7. Dropbox 的崛起之路,创始人曾拒绝乔布斯天价收购
  8. PWM DAC vs. Standalone
  9. ArcSDE NetWork I/O Error 错误处理(待完善)
  10. 编译asp.net 2.0项目到dll文件
  11. Windows设置redis开启自动启动
  12. 2.4G RFID动物耳标解决方案 SI24R2F+
  13. 交叉熵、KL散度、Jeffery分歧、JS散度
  14. 获取LOL所有在售皮肤的价格和发布日期
  15. Euro-NCAP 2030愿景
  16. 论文复现-1:Perturbation CheckLists for Evaluating NLG Evaluation Metrics
  17. 【SSH框架】--Hibernate入门
  18. 华中农业大学算法实验课答案
  19. C++ Reference: Standard C++ Library reference: C Library: cstdio: fopen
  20. 一周热图|“惊鸿仙子”俞飞鸿代言日本高端美容仪品牌雅萌;“姐圈顶流”刘敏涛携手良品铺子总裁直播带货...

热门文章

  1. 从数据库表中随机获取N条记录的SQL语句
  2. Maven配置nexus
  3. java 引用队列_Java中管理资源的引用队列相关原理解析
  4. caffe网络结构图绘制
  5. Matchmaker
  6. 一个简单的游戏服务器框架
  7. Android学习路线总结
  8. memory_buffer详解
  9. 开发中的“软”与“硬”:高画质移动游戏开发之道
  10. [熵编码] 指数哥伦布编码