Go微服务搭建 mysql 主从同步

    2022-04-18

    在实际项目,当访问量大,并发量高或者业务较复杂的时候。为了优化性能,减轻一个主库mysql服务的压力,提升用户体验,会考虑分库分表或者主从模式。 项目中会存在大量的读写操作,而且读的操作可能会占很大的比例,如果写的同时使用了锁机制,那么会导致查询等待,也就导致查询很慢。为了减少这种情况的发生,可以使用从库来处理读,主库负责写。

    主从又分为几种模式

      ...
    Read More

    Go微服存储过程+事件,实现数据备份

    2022-04-17

    遇到一个需求。需要每天凌晨三点实现对指定的几张表执行备份(备份前一天的数据)。并且写到备份库里,并对现有库中删除掉。每天的单子量非常大,如果再加上备份读写 mysql 会比较慢

    刚开始通过go协程开四个协程实现备份,一个小时备份了 不到50万太慢了。所以改用存储过程+事件的方式实现。经测试

    530万的数据量 备份需要大概13分钟。

    创建d...

    Read More

    Go微服务使用leveldb

    2022-03-19

    简介

    LevelDB是一个由Google公司所研发的键-值存储嵌入式数据库管理系统编程库

    leveldb是一个写性能十分优秀的存储引擎,是典型的LSM树(Log Structured-Merge Tree)实现。LSM树的核心思想就是放弃部分读的性能,换取最大的写入能力

    比较使用读少...

    Read More

    Go 微服务 日志收集项目结构设计及Kafka介绍

    2022-03-15

    项目背景

    每个业务系统都有日志,当系统出现问题时,需要通过日志信息来定位和解决问题。当系统机器比较少时,登录到服务器上查看即可满足,当系统机器规模巨大,登录到机器上查看几乎不现实(分布式的系统,一个系统部署在多台机器上)

    解决方案

    把机器上的日志实时收集,统一存储到中心系统。再对这些日志建立...

    Read More

    Go微服务 编写shell脚本启动docker部署的go项目

    2022-03-04

    上一篇,通过编写Dockerfile部署go项目。存在一个不方便的地方。每次将新的打包好的go项目传到服务上之后都需要先停止docker,删除docker 容器 , 删除docker 镜像,再执行dokcer build 和docker run 步骤台繁琐.

    这一篇通过编写shell脚本一键执行命令完成上述所有步骤实现自动重启docker部署的goladn项目

    ...
    Read More
    View: User: