1. Server System:CentOS 6.5 2. Reverse Proxy:nginx-1.9.3
The reverse proxy server is set on the server side and is primarily used to hide real information about the server and redirect requests. When the agent accepts the request, it determines the configuration information of the proxy server, according to the configuration, redirects the request to the real request address (the same, another, and multiple (cluster) servers) to achieve the external hidden information, as well as the purpose of load balancing.
If you do not use a proxy server, we can access the server through the browser to get back inside, if we do not deliberately change the return header, we will be able to see the information about the server, the following red box content
3. Application Server:jboss 8
JBoss is a container and server that manages EJBS, supports EJB 1.1, EJB 2.0, and EJB3 specifications, but the JBoss Core service does not include web containers that support servlet/jsp. However, this does not mean that JBoss does not support servlet/jsp's Web container, and on the JBoss website, it will find that different packages are available for download:
1 application Server Distribution: Packages that support only JBoss Core Services
2 servlet-only Distribution: A package that supports only web containers
3 Java EE7 full & Web distribution: Packages that support both the EE service and the Web container
because we used both EJB and Web services in our project, we chose the third package
4. Database:mongoDB
MongoDB is a non-relational database that stores data in a document-type structure. Using Bugumongo As the Java Development framework of MongoDB, it realizes the mapping of object and database document storage by annotations, realizes the connection with database by using DAO, and provides the query method. Implement a simple query of the database.
5. Java Developer Kit:jdk8
jdk is for The Free Software Development Kit released by Java Developers includes the complete Jre,javac compiler, Java runtime tools, jar packaging tools, Javadoc document generator, JDB debugger Debugging tools, and more.
The JRE is the Java Runtime Environment, contains the user product environment the various class library, is Java's API.
Jdk8 main features are an lambdas expression.
6. Version Control work Coordination Tool:gitlab
Introducing git, Git is a free and open source distributed version control system dedicated to making project development faster and more efficient.
git is a service that Github,gitlab is a client software that implements GIT services and is committed to making git services easier to operate.
Gitlab offers a free Enterprise Edition that can be built independently of the platform that belongs to its own team.
For More information, please refer to the following address:
git:http://rogerdudler.github.io/git-guide/index.zh.html
git: https://marklodato.github.io/visual-git-guide/index-zh-cn.html
git: http://git-scm.com/book/zh/v1
Gitlab: http://feiyang.me/2013/03/work-with-gitlab/
7. Development Editor:IntelliJ idea 14.1.4
Interllij idea and Eclipse are fast and almost never get stuck, the most real experience is powerful code hinting, and shortcut keys can be common in different languages.
8. MAVEN Toolkit:Apache maven
maven is a project management tool, as well as an automated build tool that informs the Packaging tool project of dependencies, packaged content, etc. through the configuration of the pom.xml.
9. Real-time Publishing tool: Jrebel
Jrebel is a Interllij Jdea plug-in, can be used as a hot deployment tool, the file is modified, will automatically compile and replace the original compiled files, so do not need to restart, you can see the modified effect.
do not install this plug-in, the whole project has no impact, but after, especially for the page adjustment, can bring a lot of convenience.
Project development process from scratch-pre-preparation (selection of software)