第6章--蜂巢

蜂巢简介

网站开发完,就需要测试、部署、在服务器上运行。

网易蜂巢:

采用Docker容器化技术的云计算平台 https://c.163.com

容器管理:容器可被视作为云主机的服务器

服务管理:服务可由多个容器组成,可以有多个副本

镜像仓库:可快速创建容器和服务

后端服务:blahblahblah

特点:

保证环境一致:

实际中开发环境、测试环境、生产环境等会不大相同

环境差异可能会导致业务代码运行得到不同结果

蜂巢底层采用Docker容器:把业务代码和运行环境打包成为一个镜像,成为一个整体

开发自助运维:

运维操作自动化。提交的代码。配置可直接发布上线。

一键发布部署:

传统开发模式:业务需求-->采购审批-->安装机器-->软件安装-->应用开发

蜂巢开发模式:业务需求-->应用开发-->发布部署

自动弹性扩容:

根据业务负载自动扩容缩容

如何使用?

c.163.com 注册登录

容器管理->创建容器->小型规格->debian8javaweb镜像->创建ssh密钥->创建公钥下载私钥->立即创建

得到容器后,可以进入容器详情查看属性

访问容器:

1. 通过ssh: ssh -i -/dir/private_key serverIp

2. 直接在蜂巢web端的console

安装软件:

apt-get update

apt-get install vim

创建MySQL数据库:

mysql

show databases;

create database example default character set utf8; // create a database called example

create user 'server'@'%' identified by 'example'; // create user called server

grant all on example.* to 'server'@'%' identified by 'example; // authorising

use example;

CREATE TABLE 'User' {

'id' int unsigned NOT NULL AUTO_INCREMENT,

'userName' varchar(50) NOT NULL DEFAULT '',

'userPassword' varchar(50) NOT NULL DEFAULT '',

'userDesc' varchar(100) NOT NULL DEFAULT '',

PRIMARY KEY ('id')

} ENGINE = InnoDB DEFAULT CHARSET=utf8;

INSERT INTO 'User' {'userName', 'userPassword', 'userDesc'} VALUES (test_user', 'test_password', 'Test user for server example');

从代码仓库拉取代码,进行java web程序的构建和部署:

git clone url  // 得到项目

mvn package  // 构建java web app

在target目录找到server-example.war,并拷贝到tomcat/webapps目录

部署成功,可以通过公网IP和端口号即可访问页面

帮助文档:http://support.c.163.com/

视频教程:http://support.c.163.com/#!/video

Java开发工程师(Web方向) - 01.Java Web开发入门 - 第6章.蜂巢的更多相关文章

  1. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第4章.Maven

    第4章--Maven Maven实战 Java Web应用的部署: 手动式: 编译:javac -cp $CATALINA_HOME/lib/servlet-api.jar web-inf/class ...

  2. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第3章.Tomcat

    第3章--Tomcat Tomcat安装与运行 Tomcat:目前最常用的基于java的web应用服务器 本课程中所有的Java代码最终都需要部署到Tomcat中运行 Tomcat的配置文件是XML的 ...

  3. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第1章.Web应用开发概述

    第1章--Web应用开发概述 Web应用开发概述 浏览器-服务器架构(BS-architecture) browser/ App    ---- request ---->    server ...

  4. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第5章.Git

    第5章--Git 版本控制简介 VCS (version control system) 版本控制系统:记录若干文件的修订记录的系统,帮助查阅/回到某个历史版本 LVCS本地 CVCS集中式(Cent ...

  5. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第2章.HTTP协议简介

    第2章--HTTP协议简介 HTTP协议简介 Abstract: HTTP协议的特性,HTTP请求/响应的过程,HTTP请求/响应的报文格式等知识,最后会演示如何通过Chrome提供的开发者工具,去跟 ...

  6. Java后端开发工程师是否该转大数据开发?

    撰写我对java后端开发工程师选择方向的想法,写给在java后端选择转方向的人 背景 看到一些java开发工程师,对java后端薪酬太悲观了.认为换去大数据领域就会高工资.觉得java后端没有前途.我 ...

  7. Java软件工程师面试题:Java运行时异常与一般异常有什么不一样?

    异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误.java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕 ...

  8. 【转】测试开发工程师必备软硬能力&高级测试开发工程师需要具备什么能力?

    对于测试的基本知识,可以查看软件测试相关书籍 对于在公司成为一位优秀的测试开发工程师,我觉得下面这篇文章涉及到的是我们需要的,稍微进行改动https://blog.csdn.net/sinat_210 ...

  9. Android开发工程师面试题总结。android开发面试经验

    1:Android中五种数据存储方式分别是什么?他们的特点?     (1)SharedPreference,存放较少的五种类型的数据,只能在同一个包内使用,生成XML的格式存放在设备中 (2) SQ ...

随机推荐

  1. mysql的入门基本使用(适合新手学习)

    登陆Mysql数据库mysql -u root -p 展示(查询)所有数据库show databases;进入数据库use dataname;创建数据库create database dataname ...

  2. SVN 操作报错 “Previous operation has not finished; run 'cleanup' if it was interrupted“

    今天在 通过 SVN 合并代码的时候报了如下的错误 ”Previous operation has not finished; run 'cleanup' if it was interrupted“ ...

  3. OC - KVO实现原理

    1.KVO简介 KVO是Objective-C对观察者设计模式的一种实现,它提供一种机制,指定一个被观察对象(如A类),当对象中的某个属性发生变化的时候,对象就会接收到通知,并作出相应的处理.在MVC ...

  4. Vue填坑(1)----通过vue-cli,认识vue-router

    开始 首先,确保之前已经安装过 npm 和 nodejs(为了避免版本的问题,最好使用较新的版本). 全局安装 vue-cli : npm install -g vue-cli 新建文件夹 my-pr ...

  5. 浅谈React和VDom关系

    组件化 组件的封装 组件的复用 组件的封装 视图 数据 视图和数据之间的变化逻辑 import React, {Component} from 'react'; export default clas ...

  6. #leetcode刷题之路10-正则表达式匹配

    匹配应该覆盖整个字符串 (s) ,而不是部分字符串.说明:s 可能为空,且只包含从 a-z 的小写字母.p 可能为空,且只包含从 a-z 的小写字母,以及字符 . 和 *. 示例 1:输入:s = & ...

  7. lower_case_table_name

    linux上是区分表名大小写的,但是可以通过 my.cnf文件中设置不区分! 1.找到my.cnf文件的所在地. find / -name my.cnf 找到这个文件的位置.我服务器上的位置是 /us ...

  8. app后端api设计【转】

    博客:https://blog.csdn.net/newjueqi/article/details/44037011 app和后端的交互,一般都是通过后端提供的api实现.api的设计,估计很多刚进入 ...

  9. Array方法学习小结

    原生js forEach()和map()遍历 A:相同点: 1.都是循环遍历数组中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项item,当前 ...

  10. 使用ContentType处理大量的外键关系

    问题分析 在之前的一个商城的项目中使用了mysql, 提到mysql就是外键, 多对多等等一系列的表关系 因为是一个商城的项目, 这里面有优惠券, 商品有很多的分类, 不同的商品又有不同的优惠券 其实 ...