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 ...
随机推荐
- python实例化时带括号与不带
1.首先这个标题题目不是很准确,但一时又想不到更好的标题所以只好用这个标题,下面我们来看看为什么. 首先我们要明白python中类的实例化是要加上括号的,那么不加括号是什么意思你,看代码 class ...
- 30 道 Vue 面试题
前言 本文以前端面试官的角度出发,对 Vue 框架中一些重要的特性.框架的原理以问题的形式进行整理汇总,意在帮助作者及读者自测下 Vue 掌握的程度. 本文章节结构以从易到难进行组织,建议读者按章节顺 ...
- jquery的api以及用法总结-选择器
jQuery API及用法总结 选择器 基本选择器 * 通用选择器 .class 类选择器,一个元素可以有多个类(chrome使用原生js函数getElementByClassName()实现) 利用 ...
- CF #579 (Div. 3) A.Circle of Students
A. Circle of Students time limit per test2 seconds memory limit per test256 megabytes inputstandard ...
- Springboot2.1.x配置Activiti7单独数据源问题
Springboot2.1.x配置Activiti7单独数据源问题 简介 最近基于最新的Activiti7配置了SpringBoot2. 简单上手使用了一番.发现市面上解决Activiti7的教程很少 ...
- 23种设计模式之责任链模式(Chain of Responsibility Pattern)
责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链.这种模式给予请求的类型,对请求的发送者和接收者进行解耦.这种类型的设计模式属于行为型模式. ...
- ABP vNext 不使用工作单元为什么会抛出异常
一.问题 该问题经常出现在 ABP vNext 框架当中,要复现该问题十分简单,只需要你注入一个 IRepository<T,TKey> 仓储,在任意一个地方调用 IRepository& ...
- Scala Eclipse org.eclipse.e4.workbench异常奔溃修复
Scala Eclipse org.eclipse.e4.workbench异常奔溃修复: 找到<workspace>/.metadata/.plugins/org.eclipse.e4 ...
- Spark 学习笔记之 aggregateByKey
aggregateByKey: import org.apache.spark.SparkContext import org.apache.spark.rdd.RDD import org.apac ...
- Windows下IIS搭建Ftp服务器
第一步:启用Windows IIS Web服务器 1.1 控制面板中找到"程序"并打开 1.2 程序界面找到"启用或关闭Windows功能"并打开 1.3 上面 ...