TCC推导过程
svn 账号
yuanzn 密码:TCH5mb
项目分层
MapperDao 数据校验 throw new CloudBaseRuntimeException
Helper 数据转换
manager 代码抽离层 业务逻辑校验放到这一层 其他service 调到这一层 代码生成器生成的代码调到这一层
确保service层业务代码清晰
异常处理
CloudBaseRuntimeException 业务异常
controller 层异常捕获
controller 层注解
线程池
cloudX-afterSale-job
任务
代码模板
代码格式
代码分层
环境配置
虚拟机MySQL
docker
springcloud
poseidon
配置
一、环境说明
新平台开发环境:saledev.linshimuye.com:81
主节点:10.10.15.163
子节点2:10.10.15.92
子节点3:10.10.15.147
子节点4:10.10.15.176
服务器权限:root/lsmy@2019
dubbo-monitor:http://10.10.15.92:6090
dubbo-admin管理后台:http://10.10.15.179:60001(用户:root,密码:root)
反向代理插件地址:http://10.10.15.179:8083
二、打包发布
2.1、前端发布:
sh /data/package/script/cloud-front.sh
2.2、后端发布:后端打包发布可在节点1、节点2、节点3打包
2.3、先用脚本打包
例:sh /data/webservers/script/dubbo_script_sit/order-dubbo.sh
2.4、在主节点重新销毁容器,创建容器
销毁容器
例:kubectl delete -f /data/kubernetes/xpt-dev/dubbo/order-dubbo.yaml
创建容器
例:kubectl create -f /data/kubernetes/xpt-dev/dubbo/order-dubbo.yaml
强制销毁容器
例:kubectl delete pod 【容器名】 -n=xpt-dev --force --grace-period=0
三、查看日志(主节点操作)
3.1、可在主节点查看tomcat实时日志
3.2、先查看pod(容器)名称
kubectl get pod -n=xpt-dev
3.3、根据名称打印具体容器日志
例:kubectl logs -f --tail=100 order-dubbo-deployment-5994446f84-bl4kq -n=xpt-dev
新成
销毁容器
kubectl delete -f /data/kubernetes/xpt-dev/dubbo/external-dubbo.yaml
kubectl delete -f /data/kubernetes/xpt-dev/web/external.yaml
创建容器
kubectl create -f /data/kubernetes/xpt-dev/dubbo/external-dubbo.yaml
kubectl create -f /data/kubernetes/xpt-dev/web/external.yaml
编译提供者
sh /data/webservers/script/dubbo_script_sit/external-dubbo.sh
编译消费者
sh /data/webservers/script/web_script_sit/external-web.sh
查看提供者日志
tail -f -n100 /data/webservers_tomcat/tomcat-external-dubbo-13141/logs/localhost.2019-09-29.log
查看消费者日志
tail -f -n100 /data/webservers_tomcat/tomcat-external-web-10300/logs/localhost.2019-09-29.log
查看实例状态
kubectl get pod -o wide -n xpt-dev
楠楠
15102012806
代码分层逻辑
- 凸显核心逻辑:对于数据校验和和本方法业务逻辑不相干的的代码尽量不要放到service,可放入manager层中。
- 单一职责:service层代码只向controller提供服务,不应当被其他service调用;否则会发生循环依赖,循环调用等情况,而且会造成层次不清晰的情况
- 异常分为业务异常和系统异常,需要分开处理,并且根据功能模块或者系统分配不同的异常类以便区分,对于不符合业务逻辑的请求,抛出异常以中断流程,并打上日志
- 日志,对于if else 的地方可以酌情打日志,增删改的地方必须打上日志 异常的地方需要打上日志,调试信息打上debug日志,不要使用Systen.out.print()这样的形式来说输出数据。
- 本地配置文件的管理:
- 通用性功能的封装
- 模块划分原则
- 其他参见阿里规范
测试服务器
tail -f -n 100 /data/webservers_tomcat/tomcat-external-dubbo-13141/logs/localhost.2019-10-24.log
svn://svn.linshimuye.com:3391/cloudX/code/trunk1/server/cloudX
svn://svn.linshimuye.com:3391/cloudX/code/branch/20170309-1.0
svn://svn.linshimuye.com:3391/QNassistan
http://sale.linshimuye.com:8084/
05192 xiaohong520
// 开发环境
saledev.linshimuye.com:81
03335
yvonne123
// 测试环境
http://salesit.linshimuye.com:83/
07277
lq111111
http://jira.linshimuye.com:8083/secure/Dashboard.jspa;
用户名:yxwbyuanzl ,密码:6个1
SVN 账号:jiaxc 密码: zY7W74

TCC推导过程的更多相关文章
- BP神经网络推导过程详解
BP算法是一种最有效的多层神经网络学习方法,其主要特点是信号前向传递,而误差后向传播,通过不断调节网络权重值,使得网络的最终输出与期望输出尽可能接近,以达到训练的目的. 一.多层神经网络结构及其描述 ...
- 1014 C语言文法定义与C程序的推导过程 程序:冒泡算法C程序(语法树)
阅读并理解提供给大家的C语言文法文件. 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 给出一段C程序,画出用上述文法产生这段C程序的完整语法树. 程序:冒泡算法C程序 点此文字查看原图 ...
- 1029 C语言文法定义与C程序的推导过程
1 阅读并理解提供给大家的C语言文法文件. 2 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 3 给出一段C程序,写出用上述文法产生这段C程序的推导过程. program → exte ...
- 吴恩达深度学习第1课第4周-任意层人工神经网络(Artificial Neural Network,即ANN)(向量化)手写推导过程(我觉得已经很详细了)
学习了吴恩达老师深度学习工程师第一门课,受益匪浅,尤其是吴老师所用的符号系统,准确且易区分. 遵循吴老师的符号系统,我对任意层神经网络模型进行了详细的推导,形成笔记. 有人说推导任意层MLP很容易,我 ...
- 线段树(区间树)之区间染色和4n推导过程
前言 线段树(区间树)是什么呢?有了二叉树.二分搜索树,线段树又是干什么的呢?最经典的线段树问题:区间染色:正如它的名字而言,主要解决区间的问题 一.线段树说明 1.什么是线段树? 线段树首先是二叉树 ...
- 【cs229-Lecture2】Gradient Descent 最小二乘回归问题解析表达式推导过程及实现源码(无需迭代)
视频地址:http://v.163.com/movie/2008/1/B/O/M6SGF6VB4_M6SGHJ9BO.html 机器学习课程的所有讲义及课后作业:http://pan.baidu.co ...
- 神经网络的BP推导过程
神经网络的BP推导过程 下面我们从一个简单的例子入手考虑如何从数学上计算代价函数的梯度,考虑如下简单的神经网络,该神经网络有三层神经元,对应的两个权重矩阵,为了计算梯度我们只需要计算两个偏导数即可: ...
- 3D旋转矩阵的推导过程
3D旋转矩阵的推导过程 包含平移的线性变换称作仿射变换,3D中的仿射变换不能用 3 x 3 矩阵表达,必须使用4 x 4矩阵. 一般来说,变换物体相当于以相反的量变换描述这个物体的坐标系.当有多个变换 ...
- XGBoost 完整推导过程
参考: 陈天奇-"XGBoost: A Scalable Tree Boosting System" Paper地址: <https://arxiv.org/abs/1603 ...
随机推荐
- Java 中 Set、List 和 Map 的遍历
java集合类的使用可以说是无处不在,总的我们可以将之分为三大块,分别是从Collection接口延伸出的List.Set和以键值对形式作存储的Map类型集合. package tup.lucene. ...
- Java连载33-对象的创建和使用、内存分析
一.创建一个学生类 每个学生都有学号信息,但是每一个学生的学号都是不同的,所以要访问这个学号必须先创建对象,通过对象去访问学号信息,学号信息不能直接通过“类”去访问,所以这种成员变量又被称为“实例变量 ...
- net core WebApi——缓存神器Redis
目录 前言 Redis 使用 RedisUtil 测试 小结 @ 前言 中秋过完不知不觉都已经快两周没动这个工程了,最近业务需要总算开始搞后台云服务了,果断直接net core搞起,在做的中间遇到了不 ...
- FourAndSix2 靶机渗透
0x01 简介 FourAndSix2是易受攻击的一个靶机,主要任务是通过入侵进入到目标靶机系统然后提权,并在root目录中并读取flag.tx信息 FourAndSix2.镜像下载地址: https ...
- [C++] 类的设计(2)——拷贝控制(1)
1.一个类通过定义五种特殊的成员函数来控制此类型对象的拷贝.移动.赋值和销毁:拷贝构造函数.拷贝赋值运算符.移动构造函数.移动赋值运算符和析构函数.(拷贝.移动.析构) 2.拷贝和移动构造函数定义 ...
- jenkins自动化部署项目9 --定时构建
举几个例子:每隔5分钟构建一次H/5 * * * * 每两小时构建一次H H/2 * * * 每天中午12点定时构建一次H 12 * * * 每天下午18点定时构建一次H 18 * * * 在每个小时 ...
- Selenium+python上传本地文件或者图片
基于input标签的,有属性type = file: 首先定位到点击上传的元素(input)然后直接使用send_keys()将文件在本地的路径传进去 代码如下(例子来源于本页面上传图片和文件): f ...
- Kubernetes的Secret对象的使用
Secret可以想要访问的加密数据,存放到Etcd中,Pod可以通过的Volume的方式,访问到Secret保存的信息 ,当数据修改的时候,Pod挂载的Secret文件也会被修改 一.创建Secret ...
- spark运行信息及报错问题解决集锦
错误1: ERROR client.RemoteDriver: Failed to start SparkContext: java.lang.IllegalArgumentException: Ex ...
- vimrc配置文件
目录 vimrc配置文件 参考 主要功能 使用方法 配置文件 文件下载 vimrc配置文件