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 ...
随机推荐
- caffe学习二:py-faster-rcnn配置运行faster_rcnn_end2end-VGG_CNN_M_1024 (Ubuntu16.04)
本文的主要目的是学习记录. 原文连接:https://blog.csdn.net/samylee/article/details/51099508 本博客中我将对py-faster-rcnn配置运行f ...
- CentOS部署Harbor镜像仓库
关于Harbor Harbor是用于存储和分发Docker镜像的镜像仓库服务,相比Docker Registry,Harbor在安全.标识.管理等方面做了增强,更适合企业使用: 官方网站:https: ...
- PopUpWindow 的使用笔记
最接做需求的时候,碰到了 PopUpWindow,但是也没做过多了解,就是照搬别人的代码改改逻辑.后面视觉看了之后,说让我加一些动画效果,使用起来更加舒服.可是我看别人以前也没有写,于是就开始捣鼓 P ...
- Scrapy项目 - 实现腾讯网站社会招聘信息爬取的爬虫设计
通过使Scrapy框架,进行数据挖掘和对web站点页面提取结构化数据,掌握如何使用Twisted异步网络框架来处理网络通讯的问题,可以加快我们的下载速度,也可深入接触各种中间件接口,灵活的完成各种需求 ...
- selenium自动化测试-浏览器基本操作
webdriver 通过协议和接口发现DOM中的元素,并实现控制浏览器的行为,例如打开浏览器.控制浏览器大小. 浏览器刷新及浏览器前进.后退等,接下来介绍浏览器的一些基本操作. 1.启动浏览器 dri ...
- System.exit退出程序
方法源码: /** * Terminates the currently running Java Virtual Machine. The * argument serves as a status ...
- Linux 文件复制命令cp
文件复制命令cp 命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination) cp [option] source1 source2 source3 ... ...
- uC/OS-III 时钟节拍(一)
时钟节拍就是操作系统的时基,操作系统要实现时间上的管理,必须依赖于时基(时基即时间基准,操作系统的基准时钟). uC/OS-III时钟节拍的实现过程 时钟节拍就是系统以固定的频率产生中断(时基中断), ...
- Java基础学习笔记(二) - 面向对象基础
面向对象 一.面向对象概述 面向对象思想就是在计算机程序设计过程中,参照现实事物,将事物的属性特征.行为特征抽象出来,描述成计算机时间的设计思想.面向对象思想区别于面向过程思想,强调的是通过调用对象的 ...
- c++第一个程序“Hello world!”
c++第一个程序“Hello world!” 打开编译器(这里以vs2013为例) 单击新建项目 选择Win32 控制台应用程序 点击右下角确定 点击完成 点击解决方案管理器 新建cpp文件 右 ...