Pipes

(二)msyql杂项配置

泄露秘密 提交于 2020-12-23 11:31:39
1.杂项配置 1.1 设置大小写不敏感 查看大小写是否敏感 mysql> show variables like '%lower_case_table_names%' 提示:windows系统默认大小写不敏感,但是linux系统是大小写敏感的 设置大小写不敏感 [root@hadoop102 ~]$ vim /etc/my.cnf #追加如下内容,然后重启服务 [mysqld] lower_case_table_names = 1 # 0 大小写敏感 # 1 大小写不敏感 # 2 创建的表和DB依据语句上格式存放,凡是查找都是转换为小写进行 注意:如果要设置属性为大小写不敏感,要在重启数据库实例之前就需要将原来的数据库和表转换为小写,否则将找不到数据库名。 在进行数据库参数设置之前,需要掌握这个参数带来的影响,切不可盲目设置。 1.2 sql_mode sql_mode 定义了对M ysql 中sql语句语法的校验规则! sql_mode是个很容易被忽视的变量,如果设置为空值(非严格模式),在这种情况下是可以允许一些非法操作的,比如允许一些非法数据的插入。 在生产环境必须将这个值设置为严格模式,所以开发、测试环境的数据库也必须要设置,这样在开发测试阶段就可以发现问题。 1.2.1 sql_mode的常用值 O NLY_FULL_GROUP_BY 对于GROUP BY聚合操作

美团 GIT Commit Log规范

我是研究僧i 提交于 2020-12-16 00:29:12
一、背景 Git每次提交代码都需要写commit message,一般来说,commit message应该清晰明了,说明本次提交的目的,具体做了什么操作等。但是在日常开发中,开发者提交的的commit message千奇百怪,中英文混合使用,这就导致后续代码维护成本特别大,有时自己都不知道自己的fix bug修改的是什么问题。基于以上这些问题,我们希望通过某种方式来监控用户的git commit message,让规范更好的服务于质量,提高大家的研发效率。 二、约定 所有项目的Commit Log的格式精确控制,增加可读性,便于查看变更历史,形成良好的git使用习惯。 规范作为git hook的commit-msg和pre-receive执行,不合法无法提交 。全面执行后可自动化执行以下操作: 平台工具包可根据commit log直接生成每次版本的changelog。 上线申请系统自动附带本次上线的commit log。 要求每次提交认真思考,保持commit log的整洁性,每次commit的局部完整性。 三、Commit Log Format Commit Log包含三部分header、body、footer,其中header是必须的,格式固定,body在变更有必要详细解释时使用。 commit log 格式 Plain Text <types>(<scopes>):

2020“游族杯”网络挑战赛划水记(坑)

非 Y 不嫁゛ 提交于 2020-10-21 03:31:51
前言 绝不放过任何一个可以水的机会。 和去年相比毫无长进,甚至被吊打系列: 2019“游族杯”上海游记 。(虽说去年也挺弱的) emmm 无话可说了已经。。。 那么水的 \(T1\) ,我死活做不出来,整场比赛花了一半时间去想,第二天才得知是英文题意理解错了。。。 败在英语上,以后还是好好学习英语吧, 碰上英文题就当阅读理解来做。 我这么弱,又浪费了大量时间,其他题目虽然有些想法,最后自然也来不及写了。 感觉要不是这 \(T1\) ,我说不定还能多做出来一两道题吧。 谨以此篇,作为我菜的证明。 \(A\) :Amateur Chess Players( 点此看题面 ) 还能说些什么呢? 显然,众所周知,一场 \(ACM\) 比赛 \(T1\) 肯定是道 \(SB\) 题。 因此,看完题目我第一反应就是猜结论 \(n>m\) 时先手赢, \(n\le m\) 时后手赢。 然后我就无比愉悦地把自己 \(Hack\) 掉了。 为什么呢?因为我看错题目了! 我以为一个人每次可以把至少一个自己的棋子以及共线的对方棋子一起移走,后来第二天才知道一个人每次只能拿走一条线上自己的棋子! 那么一个显然的贪心每人每次只会移走一个棋子,然后只要比下谁的棋子多就好了。。。 可怜一场比赛 \(4\) 个小时,我前前后后想这道题就累计花下了 \(2\) 个小时左右,心态直接崩了,只能默默接受被吊打的命运。

cocoscreator练手 入门 Flappy Bird 像素鸟项目(2)加入水管

天涯浪子 提交于 2020-10-12 04:54:24
这次加个水管,效果是生成水管,并且让水管自动向左移动 源码和素材可在公众号获取(发送FlappyBird): 制作水管预制 cocoscreator在生成节点的策略中,提供了预制节点的方案,就相当于把节点的默认值设定好,然后保存为文件,在需要的时候利用脚本生成。 像素鸟中需要不停的生成水管,所以需要用到水管的预制节点。 cocoscreator中制作预制节点需要先用设置普通节点的方法设置节点,然后将节点拖入资源中。 设置单个节点 在我提供的素材中,有水管的上部分和下部分: 在层级管理器(就是游戏存放节点的地方)中新建一个节点,名叫pipe,把上面两个图片拖入该节点生成该节点的子节点: 做好之后应该长这样。 然后来编辑这两个水管,首先先让水管的x值都为0,y值让pipe_down为580,pipe_up为-580,宽度为52,长度为1000(长度1000是为了让他可以超出屏幕,不会被玩家看到尾部,y值为580的目的是长度的一半是500,然后就会多80的间隙,两个水管都这样设置就会在中间有160的间隙,可以让鸟通过): 上图为pipe_down的设置,pipe_up的值只有position的y是负的,其他都一样。 设置好之后,你会发现图变形了,水管头部会被拉伸,就会很难看,这是因为cocoscreator默认对图像进行原来xy直接拉升,这个需要设置一下,让他不该拉伸的不拉伸。

微服务架构理解[架构图]

て烟熏妆下的殇ゞ 提交于 2020-10-10 00:24:52
微服务架构 概念:把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。 定义:围绕业务领域组件来创建应用,这些应用可独立地进行开发、管理和迭代。在分散的组件中使用云架构和平台式部署、管理和服务功能,使产品交付变得更加简单。 本质:用一些功能比较明确、业务比较精练的服务去解决更大、更实际的问题。 基于微服务架构的设计: 目的:有效的拆分应用,实现敏捷开发和部署 微服务的具体特征 官方的定义: 1、一些列的独立的服务共同组成系统 2、单独部署,跑在自己的进程中 3、每个服务为独立的业务开发 4、分布式管理 5、非常强调隔离性 大概的标准: 1、分布式服务组成的系统 2、按照业务,而不是技术来划分组织 3、做有生命的产品而不是项目 4、强服务个体和弱通信( Smart endpoints and dumb pipes ) 5、自动化运维( DevOps ) 6、高度容错性 7、快速演化和迭代 为了更好地理解微服务和设计微服务架构,列出几个比较经典的设计图辅助理解: 来源: oschina 链接: https://my.oschina.net/u/4273871/blog/4437241

Laravel 中间件解析

陌路散爱 提交于 2020-08-19 22:00:53
Laravel 中间件 代码展示 protected function sendRequestThroughRouter($request) { # $this->app->instance('request', $request); # Facade::clearResolvedInstance('request'); # $this->bootstrap(); return (new Pipeline($this->app)) ->send($request) ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware) ->then($this->dispatchToRouter()); // $this->dispatchToRouter(),后期继续 } new \Illuminate\Routing\Pipeline($this->app): public function __construct(Container $container = null) { $this->container = $container; } public function send($passable) { $this->passable = $passable; return $this; } public

MySQL服务器的SQL模式

只愿长相守 提交于 2020-08-18 13:27:01
与其它数据库不同,MySQL 服务器可以在不同的 SQL 模式下运行,并且可以针对不同的客户端以不同的方式应用这些模式,具体取决于 sql_mode 系统变量的值。 SQL 模式定义了 MySQL 数据库所支持的 SQL 语法和数据校验(数据验证检查),这样可以更容易的在不同环境下使用 MySQL。 在 MySQL 中,SQL 模式常用来解决下面几类问题: 通过设置 SQL Mode,可以完成不同严格程度的数据校验,有效地保障了数据的准确性。 通过设置 SQL Mode 为 ANSI 模式,可以保证大多数 SQL 符合标准的 SQL 语法,使不同数据库之间进行迁移时,不需要进行较大的修改。 在不同数据库之间进行数据迁移之前,设置 SQL Mode 可以使 MySQL 中的数据更方便地迁移到目标数据库中。 sql_mode 系统变量的常用值 下面列出了几种 SQL 模式常用的值。 TRICT_ ALL_TABLES 和 STRICT_ TRANS_TABLES 如果将 sql_mode 的值设置为 TRICT_ALL_TABLES 和 STRICT_TRANS_TABLES,那么 MySQL将启用“严格”模式。在严格模式下,MySQL 服务器会更加严格地对待接收到的不合格数据,它不会把这些不合格的数据转换为最为接近的有效值,而是会拒绝接收它们。 简单来说 MySQL 的严格模式就是

MySQL服务器的SQL模式

泄露秘密 提交于 2020-08-13 01:19:44
  与其它数据库不同,MySQL 服务器可以在不同的 SQL 模式下运行,并且可以针对不同的客户端以不同的方式应用这些模式,具体取决于 sql_mode 系统变量的值。   SQL 模式定义了 MySQL 数据库所支持的 SQL 语法和数据校验(数据验证检查),这样可以更容易的在不同环境下使用 MySQL。   在 MySQL 中,SQL 模式常用来解决下面几类问题:   通过设置 SQL Mode,可以完成不同严格程度的数据校验,有效地保障了数据的准确性。   通过设置 SQL Mode 为 ANSI 模式,可以保证大多数 SQL 符合标准的 SQL 语法,使不同数据库之间进行迁移时,不需要进行较大的修改。   在不同数据库之间进行数据迁移之前,设置 SQL Mode 可以使 MySQL 中的数据更方便地迁移到目标数据库中。   sql_mode 系统变量的常用值   下面列出了几种 SQL 模式常用的值。   TRICT_ ALL_TABLES 和 STRICT_ TRANS_TABLES   如果将 sql_mode 的值设置为 TRICT_ALL_TABLES 和 STRICT_TRANS_TABLES,那么 MySQL将启用“严格”模式。在严格模式下,MySQL 服务器会更加严格地对待接收到的不合格数据,它不会把这些不合格的数据转换为最为接近的有效值,而是会拒绝接收它们。

MySQL学习笔记(24):权限与安全

余生长醉 提交于 2020-08-10 07:37:11
本文更新于2020-05-03,使用MySQL 5.7,操作系统为Deepin 15.4。 目录 权限 安全 操作系统相关的安全问题 数据库相关的安全问题 数据库安全设置选项 权限 权限存取需要用到mysql库中user、db、host、tables_priv、columns_prvi这几个权限表。列分为4个部分:用户列、权限列、安全列、资源控制列。权限列又分为普通权限和管理权限。 表名 user db host 说明 用户列 host host host 用户列 user db db 用户列 password user 权限列 select_priv select_priv select_priv 查询记录 权限列 insert_priv insert_priv insert_priv 插入记录 权限列 update_priv insert_priv insert_priv 更新记录 权限列 delete_priv delete_priv delete_priv 删除记录 权限列 index_priv index_priv index_priv 维护索引 权限列 alter_priv alter_priv alter_priv 修改数据库或表 权限列 create_priv create_priv create_priv 创建数据库或表 权限列 drop_priv drop

操作系统高频面试题

妖精的绣舞 提交于 2020-08-07 01:26:32
1.1 什么是操作系统? 👨‍💻 面试官 : 先来个简单问题吧! 什么是操作系统? 🙋 我 :我通过以下四点向您介绍一下什么是操作系统吧! 操作系统(Operating System,简称 OS)是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石; 操作系统本质上是运行在计算机上的软件程序 ; 操作系统为用户提供一个与系统交互的操作界面 ; 操作系统分内核与外壳(我们可以把外壳理解成围绕着内核的应用程序,而内核就是能操作硬件的程序)。 关于内核多插一嘴:内核负责管理系统的进程、内存、设备驱动程序、文件和网络系统等等,决定着系统的性能和稳定性。是连接应用程序和硬件的桥梁。 内核就是操作系统背后黑盒的核心。 1.2 系统调用 👨‍💻 面试官 : 什么是系统调用呢? 能不能详细介绍一下。 🙋 我 :介绍系统调用之前,我们先来了解一下用户态和系统态。 根据进程访问资源的特点,我们可以把进程在系统上的运行分为两个级别: 用户态(user mode) : 用户态运行的进程或可以直接读取用户程序的数据。 系统态(kernel mode):可以简单的理解系统态运行的进程或程序几乎可以访问计算机的任何资源,不受限制。 说了用户态和系统态之后,那么什么是系统调用呢? 我们运行的程序基本都是运行在用户态,如果我们调用操作系统提供的系统态级别的子功能咋办呢?那就需要系统调用了!