strip

上帝视角,什么是生态思维(上)

巧了我就是萌 提交于 2020-07-28 10:32:02
以模式为中心需要具备一种重要的思维方式叫生态思维,生态思维是站在进化或退化的角度看企业对环境的适应能力,环境是变化的,企业内部结构是应对内部的管理与外部的经营而存在,而时代的变迁和技术的进步引发了整个市场环境的变化,企业就应该进行某些部门的进化,而某些部门就应该退化。 一个是否具有生态思维的人在于他的格局,这是一种掌控全局的能力。一是把有限的企业资源合理优化,发挥出最大的效益,另外还要学会引入外部资源。高手做事赢在谋篇布局,正如下棋并不在于某一棋子的得失,而是全局的得与失。商场如战场,每一步都要运用资源,牵一发而动力而动全身。因此局在心中,万物不破。 比如过去的投资投的是资源,你有1000万,如果你投一个项目需要1000万,你一定是把这一千万投在自己的公司,这只是一个人的资源,整个公司就你一个人琢磨事。而对于赚钱这件事来说,先得有资源,如此经营才是有有效的。怎么理解?一句话:小媳妇难做无米之炊。今天很多老板赚不到钱,实际是在资源层面上出了问题,却总以为自己能力出了问题。你有没有很好的产品?有没有很好的品牌?有没有很好的渠道?有没有优秀的人才?有没有强大的资金支持?有没有好的商业模式?有没有好的项目?这些资源总得有一个吧。结果你没有好项目,没有很好的各种人脉关系,产品又不行,品牌形象又差,渠道、人才没有,资金很短缺,更不知道什么是商业模式,项目就一个,这明显就是资源不足。

24个经典的MySQL索引问题,你都遇到过哪些?

拟墨画扇 提交于 2020-07-28 09:59:39
索引 1、什么是索引? 2、索引有哪些优缺点? 3、索引使用场景(重点) 4、索引有哪几种类型? 5、索引的数据结构(b树,hash) 6、索引的基本原理 7、索引算法有哪些? 8、索引设计的原则? 9、创建索引的原则(重中之重) 10、创建索引的三种方式,删除索引 11、创建索引时需要注意什么? 12、使用索引查询一定能提高查询的性能吗?为什么 13、百万级别或以上的数据如何删除 14、前缀索引 15、什么是最左前缀原则?什么是最左匹配原则 16、B树和B+树的区别 17、使用B树的好处 18、使用B+树的好处 19、Hash索引和B+树所有有什么区别或者说优劣呢? 20、数据库为什么使用B+树而不是B树 21、B+树在满足聚簇索引和覆盖索引的时候不需要回表查询数据, 22、什么是聚簇索引?何时使用聚簇索引与非聚簇索引 23、非聚簇索引一定会回表查询吗? 24、联合索引是什么?为什么需要注意联合索引中的顺序? 1、什么是索引? 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。 索引是一种数据结构。数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。 更通俗的说,索引就相当于目录。为了方便查找书中的内容,通过对内容建立索引形成目录。索引是一个文件

Springboot拦截器实现IP黑名单

折月煮酒 提交于 2020-07-28 09:09:02
Springboot拦截器实现IP黑名单 一·业务场景和需要实现的功能 以redis作为IP存储地址实现。 业务场景:针对秒杀活动或者常规电商业务场景等,防止恶意脚本不停的刷接口。 实现功能:写一个拦截器拦截掉黑名单IP,额外增加一个接口,将ip地址添加到redis中,并且返回redis中当前全部ip 二·Springboot中定义一个拦截器 @Order(0) @Aspect @Component public class AopInterceptor { /** * 定义拦截器规则 */ @Pointcut("execution(* com.test.test.api.controller.test.test.*(..))") public void pointCut() { } /** * 拦截器具体实现 * * @throws Throwable */ @Around(value = "pointCut()") public Object around(ProceedingJoinPoint point) throws Throwable { try { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes())

HTML5 Canvas 中的属性和方法

点点圈 提交于 2020-07-28 06:27:17
Canvas坐标 上一节我们已经学习了如何创建画布,而要在画布上绘制图形首先我们得弄清楚画布中的坐标关系。 Canvas画布中的左上角坐标为 (0,0) ,画布的 x 和 y 轴用于在画布上对绘画进行定位。 如下图所示: 绘制线条 我们可以通过下面属性和方法来在 Canvas 画布中绘制线条: beginPath() :用于起始一条路径,或重置当前路径。 closePath() :创建从当前点到开始点的路径。 moveTo() :把路径移动到画布中的指定点,不创建线条。此方法有两个参数,第一个参数为路径在 x 轴的坐标,第二个参数为路径在 y 轴的坐标。 lineTo() :添加一个新点,然后创建从该点到画布中最后指定点的线条(该方法并不会创建线条)。 stroke() :会实际地绘制出通过 moveTo() 和 lineTo() 方法定义的路径。默认颜色为黑色。 lineWidth :设置或返回当前的线条宽度,单位为像素。 strokeStyle :设置或返回用于笔触的颜色、渐变或模式。 示例: 在画布中绘制一条蓝色的线条: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>HTML5学习(9xkd.com)</title> </head> <body> <canvas id="mycanvas" width=

超实用!服务器如何快速实现一键环境部署!

ぃ、小莉子 提交于 2020-07-28 04:14:14
很多新手在建站时都会在环境部署这一环境中耗费大量时间,如何选择自己需要的环境配件,一一下载、安装、配置……虽说没有什么特别困难的地方,但却十分麻烦。有没有其他更简单的操作方法呢?下面我就为大家介绍我是如何快速实现一键环境部署的! 首先你需要下载一款有环境部署功能的管理面板,管理面板其实就是服务器管理工具,不知道你们有没有谁在用,这里我建议新人刚开始学习时都可以去下载一个,对服务器的管理还有建站都有很大帮助。现在网上绝大部分管理面板都有一键环境部署功能,你们可以自行比对下载,我个人比较习惯用的是云帮手,接下来的介绍都会以 云帮手 为例。 首先在添加了自己的服务器之后,就可以进行环境部署了,打开环境管理页面,这里会提示你需要先安装软件,才能进行管理。点击进入软件市场。 云帮手有LNMP、LAMP、LTMP三种不同的环境套件,你根据自己的需要选择一键安装或单独安装。 安装方式也可以自己选择是极速安装还是编译安装 目前云帮手上面的软件还是挺全的,WEB服务器、SQL数据库、FTP服务器、环境框架、管理工具不同类别的软件都有,直接在上面就可完成所有软件的下载。 软件主要有以下这些: WEB服务器:Apache、Nginx、Tengine、 SQL数据库:MySQL FTP服务器:PureFTPd 环境框架:PHP 管理工具:TightVNC、phpMyAdmin

如何迅速有效学习web前端开发?在学习中你更应该注重哪些东西

。_饼干妹妹 提交于 2020-07-28 03:39:13
什么是高效率学习? 一:追求学习的性价比 学习性价比 = 所学到的有用的知识 ÷ 花费的时间 **ps:**如果你用了一年时间,还不能仿站,显然效率是低的。 想要学习性价比高,就尽力向这两点努力: **1. **尽量学有用的知识,暂时用不到的可以放在后面学。 **2. **保证学习速度,能一下午学完的知识点就坚决不要拖两个下午。 我们来看看前端哪些知识是有用的。而且我们要精简。 1. 英语 2. HTML + CSS + JS 3. HTTP 4. 浏览器 API 这四个是必然要学的,没法再精简了。 为什么英语要放在这里? 因为编程全都用英文,“if” “else” “while” “for” “var” “new”之类。 HTML 中的 <a> 标签的全称是 “anchor” ,很多人并不记得,这个 a 好记,不记得全称不要紧。 但有些标签你不记得全称就不行,比如 <abbr> <aside> <blockquote> 。 不少人甚至由于不知道这些单词的意思而放弃使用这些标签!!! CSS 里英语就更重要了,比如 transition、transform、translate,你在不了解英语含义的情况下,很难把这些记下来。 1. 对于英语,我的建议是: 设备上可以装翻译工具,哪里不会点哪里。 抓住可以学英语的机会。比如多用英文软件,少用汉化版。比如用英文操作系统,不用中文版

Python异常处理

江枫思渺然 提交于 2020-07-27 22:27:20
Python中的异常处理 异常分类    程序中难免出现错误,总共可分为两种。    1.逻辑错误    2.语法错误    对于刚接触编程的人来说,这两个错误都会经常去犯,但是随着经验慢慢的积累,语法错误的情况会越来越少反而逻辑错误的情况会越来越多(因为工程量巨大)。不论多么老道的程序员都不可避免出现这两种错误。 异常的三大信息    异常其实就是程序运行时发生错误的信号,我们写代码的过程中不可避免也最害怕的就是出现异常,然而当程序抛出异常时实际上会分为三部分,即三大信息。 常用的异常类    在Python中一切皆对象,异常本身也是由一个类生成的, NameError 其实本身就是一个异常类,其他诸如此类的异常类还有很多。 Python中常见的异常类 AttributeError 试图访问一个对象没有的属性,比如 foo.x ,但是 foo 并没有属性 x IOError 输入/输出异常;基本上是无法打开文件 ImportError 无法引入模块或包;基本上是路径问题或名称错误 IndentationError 语法错误(的子类) ;代码没有正确对齐 IndexError 下标索引超出序列边界,比如当 x 只有三个元素,却试图访问 x[5] KeyError 试图访问字典里不存在的键 KeyboardInterrupt Ctrl+C 被按下 NameError

猫(Modem)和路由器有什么区别?

孤街浪徒 提交于 2020-07-27 15:11:00
>作者 谢恩铭,公众号「程序员联盟」(微信号:coderhub)。 转载请注明出处。 原文: https://www.jianshu.com/p/4f2c3962a318 内容简介 猫和路由器傻傻分不清楚 路由器是干什么的? Modem(猫)是干什么的? 路由器和猫的结合 买自己的猫吧 总结 1. 猫和路由器傻傻分不清楚 生活中,我们经常听到路由器和猫这两个词,对应的英语分别是 Router 和 Modem。 这里的猫不是加菲猫那个猫,也不是起司猫那个猫,也不是猫王那个猫,也不是...(“作者你够了,不要再猫腻了”)。 这个猫是音译,是 Modem 的谐音。 Modem 其实是一个合成词,是 modulator(调制器)和 demodulator(解调器)的合成,就是“调制解调器”。 许多互联网服务供应商(ISP,是 Internet Service Provider 的缩写,即向广大用户综合提供互联网接入业务、信息业务和增值业务的电信运营商)提供调制解调器/路由器的组合(下面会讲到),但调制解调器和路由器是不同的。 了解什么是调制解调器很重要,这样你就可以购买自己的调制解调器,停止支付每月不少的租用费给互联网服务供应商。 中国三大基础运营商:中国移动,中国联通,中国电信。 法国的 Orange,Free,Bouygues,SFR 也是互联网服务供应商。

OC项目转Swift指南

情到浓时终转凉″ 提交于 2020-07-27 13:53:49
运行环境:Xcode 11.1 Swift5.0 最近参与的一个项目需要从Objective-C(以下简称OC)转到Swift,期间遇到了一些坑,于是有了这篇总结性的文档。 如果你也有将OC项目Swift化的需求,可以作为参考。 OC转Swift有一个大前提就是你要对Swift有一定的了解,熟悉Swift语法,最好是完整看过一遍官方的 Language Guide 。 转换的过程分自动化和手动转译,鉴于自动化工具的识别率不能让人满意,大部分情况都是需要手动转换的。 自动化工具 有一个比较好的自动化工具 Swiftify ,可以将OC文件甚至OC工程整个转成Swift,号称准确率能达到90%。我试用了一些免费版中的功能,但感觉效果并不理想,因为没有使用过付费版,所以也不好评价它就是不好。 Swiftify还有一个Xcode的插件 Swiftify for Xcode ,可以实现对选中代码和单文件的转化。这个插件还挺不错,对纯系统代码转化还算精确,但部分代码还存在一些识别问题,需要手动再修改。 手动Swift化 桥接文件 如果你是在项目中首次使用Swift代码,在添加Swift文件时,Xcode会提示你添加一个 .h 的桥接文件。如果不小心点了不添加还可以手动导入,就是自己手动生成一个 .h 文件,然后在 Build Settings > Swift Compiler -