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推导过程的更多相关文章

  1. BP神经网络推导过程详解

    BP算法是一种最有效的多层神经网络学习方法,其主要特点是信号前向传递,而误差后向传播,通过不断调节网络权重值,使得网络的最终输出与期望输出尽可能接近,以达到训练的目的. 一.多层神经网络结构及其描述 ...

  2. 1014 C语言文法定义与C程序的推导过程 程序:冒泡算法C程序(语法树)

    阅读并理解提供给大家的C语言文法文件. 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 给出一段C程序,画出用上述文法产生这段C程序的完整语法树. 程序:冒泡算法C程序 点此文字查看原图 ...

  3. 1029 C语言文法定义与C程序的推导过程

    1 阅读并理解提供给大家的C语言文法文件. 2 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 3 给出一段C程序,写出用上述文法产生这段C程序的推导过程. program → exte ...

  4. 吴恩达深度学习第1课第4周-任意层人工神经网络(Artificial Neural Network,即ANN)(向量化)手写推导过程(我觉得已经很详细了)

    学习了吴恩达老师深度学习工程师第一门课,受益匪浅,尤其是吴老师所用的符号系统,准确且易区分. 遵循吴老师的符号系统,我对任意层神经网络模型进行了详细的推导,形成笔记. 有人说推导任意层MLP很容易,我 ...

  5. 线段树(区间树)之区间染色和4n推导过程

    前言 线段树(区间树)是什么呢?有了二叉树.二分搜索树,线段树又是干什么的呢?最经典的线段树问题:区间染色:正如它的名字而言,主要解决区间的问题 一.线段树说明 1.什么是线段树? 线段树首先是二叉树 ...

  6. 【cs229-Lecture2】Gradient Descent 最小二乘回归问题解析表达式推导过程及实现源码(无需迭代)

    视频地址:http://v.163.com/movie/2008/1/B/O/M6SGF6VB4_M6SGHJ9BO.html 机器学习课程的所有讲义及课后作业:http://pan.baidu.co ...

  7. 神经网络的BP推导过程

    神经网络的BP推导过程 下面我们从一个简单的例子入手考虑如何从数学上计算代价函数的梯度,考虑如下简单的神经网络,该神经网络有三层神经元,对应的两个权重矩阵,为了计算梯度我们只需要计算两个偏导数即可: ...

  8. 3D旋转矩阵的推导过程

    3D旋转矩阵的推导过程 包含平移的线性变换称作仿射变换,3D中的仿射变换不能用 3 x 3 矩阵表达,必须使用4 x 4矩阵. 一般来说,变换物体相当于以相反的量变换描述这个物体的坐标系.当有多个变换 ...

  9. XGBoost 完整推导过程

    参考: 陈天奇-"XGBoost: A Scalable Tree Boosting System" Paper地址: <https://arxiv.org/abs/1603 ...

随机推荐

  1. mybatis源码专题(2)--------一起来看下使用mybatis框架的insert语句的源码执行流程吧

    本文是作者原创,版权归作者所有.若要转载,请注明出处.本文以简单的insert语句为例 1.mybatis的底层是jdbc操作,我们先来回顾一下insert语句的执行流程,如下 执行完后,我们看下数据 ...

  2. 数据库占用CPU过高,性能分析与调优

    一.使用 dstat -tcdlmnsygr --disk-util 查看当前系统资源使用状况,当前cpu使用率100% 二.使用TOP命令 查看当前占用CPU进程,可以看到当前占用CPU进程最高的是 ...

  3. [C++] 头文件中不要用using namespace std

    先总结下: 1. using namespce std:尽量不要(或者强硬一点,不许)在头文件中使用. 解析: 不让这么用,主要原因就是防止名字重复(即自定义变量名和std中名字重复),因为头文件会被 ...

  4. ActiveMQ JMX使用

    一.说明 ActiveMQ使用过程中,可以使用自带的控制台进行相关的操作以及查看,但是当队列数相当多的时候,在查询以及整体的监控上,就可能相当的不便.所以可通过JMX的方式,进行MQ中队列相关指标的以 ...

  5. 【linux】【Zookeeper】Centos7安装Zookeeper-3.5.5

    一 .下载zookeeper wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.5.5/apache-zookeeper-3.5.5 ...

  6. [python]OS文件系统

    1.getcwdd() 获得应用程序当前的工作目录 #getcwd() 获取应用程序当前的工作目录 import os print(os.getcwd()) 2.chdir(path) 改变当前工作目 ...

  7. Eureka Server不剔除已关停的节点的问题

    由于Eureka拥有自我保护机制,当其注册表里服务因为网络或其他原因出现故障而关停时,Eureka不会剔除服务注册,而是等待其修复.这是AP的一种实现. 自我保护机制:Eureka Server在运行 ...

  8. 死磕 java同步系列之Phaser源码解析

    问题 (1)Phaser是什么? (2)Phaser具有哪些特性? (3)Phaser相对于CyclicBarrier和CountDownLatch的优势? 简介 Phaser,翻译为阶段,它适用于这 ...

  9. Spring Data JPA 梳理 - JPA是什么

    总结: JPA是java的标准,不是Spring的标准 java标准中一般通过Meta-INF文件规范开发层面的事情,JPA也不例外,使用persistence.xml JPA定义了Entity 到 ...

  10. Spring 梳理-启用MVC

    启用注解启动的Spring MVC xml <mvc:annotation-dirven> <mvc:annotation-driven /> 是一种简写形式,完全可以手动配置 ...