• seata-XA模式
    落雁沙
    1.什么是XA模式 XA是由X/Open组织提出的分布式事务的规范。 XA规范主要定义了(全局)事务管理器(TM)和(局 部)资源管理器(RM)之间的接口。主流的关系型 数据库产品都是实现了XA接口的。 XA接口是双向的系统接口,在事务管理器 (TM)以及一个或多个资源管理器(RM)之 间形成通信桥梁。 XA之所以需要引入事务管理器是因为,在分布 式系统中,从理论上讲两台机器理论上无法达 到一致的状态,需要引入一个单点进行协调。 由全局事务管理器管理和协调的事务,可以跨 越多个资源(如数据库或JMS队列)和进程。 全局事务管理器一般使用 XA 二阶段提交协议 与数据库进行交互。 2.seata...
    •  0
    •  0
    •  2020-09-28
  • seata-AT模式
    落雁沙
    1.什么是AT模式 seata的AT模式是一个无侵入的分布式事务。 2.AT模式的工作原理 AT模式是基于一个全局的事务管理器来管理的。例如,在全局事务下,当我们存在A,B两个服务的时候,A和B的提交都会生成一个undo_log的记录,会记录下执行前和执行后的镜像,如果一段提交没有错误的话,则会进行二段提交,如果在全局事务中有异常抛出,则根据undo_log进行回滚。 3.全局事务的标记 在seata中,全局事务会有一个TX_ID来标记。这个主要体现在 io.seata.core.context.RootContext#bind() 。在分布式系统中不管分成多少个子系统,我们用请求生命周期的概...
    •  0
    •  0
    •  2020-09-28
  • 分布式事务
    落雁沙
    1.事务的概念 事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。 2.事务的特性 事务是必须满足4个条件(ACID):原子性(Atomicity,或称不可分割性)、一致性(Consistency)、隔离性(Isolation,又称独立性)、持久性(Durability)。 原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。 一致性:在事务开始之前和事务结束以后,数据库的完整性没有被破坏。这...
    •  1
    •  1
    •  2020-09-28
  • 内链优化的注意事项
    Mini
    内链,即内部锚文本链接 内链优化可以提升关键词对应页面在搜索引擎的权重,有利于关键词排名,对于SEO而言至关重要。 下列即为内链优化的注意事项: 同一页面下相同关键词不要出现不同的链接。 同一页面下相同链接不要出现不同关键词。 同一页面下不要出现不同链接相同关键词。 同一页面需求关键词链接可根据页面文字以及质量形成比例。 同一页面下关键词链接不要超过5个,同时包括核心关键词以及绝对性信息内容、文章标题链接。 网站下核心关键词占有首页一级链接在80%,绝对信息索引页可以占有20%。 网站多个核心关键词以时间段进行网站优化内部链接。 专题栏目下以栏目主要关键词为链接关键词。 页面出现核心关键词以首...
    •  0
    •  0
    •  2020-09-25
  • python Flask 开发一个机器人的HTTP服务
    Wade
    ##1、创建一个Flask 项目,一下是目录结构 . ├── api │ ├── init.py │ ├── pycache │ │ ├── init.cpython-36.pyc │ │ └── wechat.cpython-36.pyc │ └── wechat.py ├── manage.py └── requirements.txt 2、查看代码文件 2.1、查看wechat.py #!/usr/bin/env python # -*- coding:utf-8 -*- from urllib import parse, request import json class WeCh...
    •  0
    •  0
    •  2020-09-24
  • JAVA服务端生成图片 -用于分享海报等场景
    小小鼠标垫
    * 基于HTML生成图片 方案1 基于AWT or Swing 的Panel生成 JEditorPane ed = new JEditorPane(new URL("http://www.google.com")); ed.setSize(200,200); BufferedImage image = new BufferedImage(ed.getWidth(), ed.getHeight(),BufferedImage.TYPE_INT_ARGB); SwingUtilities.paintComponent(image.createGraphics(), ed, new JPa...
    •  2
    •  1
    •  2020-09-23
  • ECS不重启不丢数据进行数据盘扩容
    Dane.shang
    前言:最近项目中遇到了生产环境数据盘容量不足需要扩容,但是又不能停止生产环境服务。阿里云的数据盘扩容方案大多数都是各种要么需要重启实例,要么就是需要抹掉分区数据,并不适用我现在的情况,所以我是用了插件进行动态扩容。 1,对ECS数据盘进行动态扩容,首先就是要先买容量,在ECS控制台上点击数据盘 --->更多 然后输入需要扩容的空间,最后点击付款就可以了。 注意!注意!!! 任何对磁盘进行写、格式化、等操作,都应该先打快照!!! 记得打快照!!! 2,然后登陆ECS实例, df -h发现磁盘容量并没有变化,还是扩容前的容量 3,接下来我们开始扩容。首先需要安装两个插件。 yum install ...
    •  0
    •  0
    •  2020-09-17
  • 视觉1-1、OpenGL专用名词理解
    kingsom
    一、初识图形API 1、OpenGL(用于电脑平台) OpenGL是用来渲染2D、3D矢量图形语言、跨平台的应用程序编程接口(API)。这个接口由350个左右的不同函数调用组成,常用于CAD、虚拟现实、科学可视化程序和电子游戏开发。 2、其他图形库 OpenGL ES(用于移动端、嵌入式设备):是OpenGL 三维图形 API 的子集,针对手机、pad、游戏主机、家电设备和汽车等嵌入式设备的跨平台API。 DirectX(用于windows端):属于Windows系统的一套多媒体处理库,并不支持其他平台。包含四大部分:显示部分、声⾳音部分、输⼊部分和网络部分。 Metal(苹果官方Api):A...
    •  0
    •  0
    •  2020-09-13
  • python Flask 编写一个简单的机器人通知
    Wade
    1、wechat.py #!/usr/bin/env python # -*- coding:utf-8 -*- from urllib import parse, requestimport json class WeChatAPI(object): def __init__(self, http_url, message, on_off=False): self.http_url = http_url self.message = message self.on_off = on_off def run(self): ...
    •  0
    •  0
    •  2020-09-12
  • kubernetes监控prometheus+grafana+gluster持久化部署
    Wade
    整套监控集群数据持久化是通过glusterfs集群存储做数据持久化,其他的存储也行,如nfs,整个目录在/root/glusterfs或者/home/glusterfs 1、创建一个endpoints [root@master glusterfs]# cat gluster-ep.yaml apiVersion: v1 kind: Endpoints metadata: name: glusterfs-cluster namespace: ops-monitoring subsets: - addresses: - ip: 192.168.1.67 - ip: 192.168....
    •  0
    •  0
    •  2020-09-12