文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 不知道大家还是学生的时候有没有这个问题:公司做的项目和自己在学校练手的项目有多大的区别...我以前在学校跟着视频做一些项目练手,总感觉公司做的东西会要难很多,不知道跟公司的真实项目区别在哪。 总的来说,我实习的总时间也快半年了,谈谈我觉得公司项目和自己练手的项目有啥区别,欢迎补充。...区别 在视频练的项目大多数都是由讲师在本地编码来讲解整一个项目的开发过程,而我们去到公司做的第一件事是啥?把项目clone(checkout)到本地来看。...分析起来不方便 在公司一般将错误的信息(或者有用的信息)写到log(日志)中。...vim console.log吗,我想根据某个关键字来查怎么在vim上操作啊?
本文转自:Java3y 不知道大家还是学生的时候有没有这个问题:公司做的项目和自己在学校练手的项目有多大的区别。...我以前在学校跟着视频做一些项目练手,总感觉公司做的东西会要难很多,不知道跟公司的真实项目区别在哪。 总的来说,我实习的总时间也快半年了,谈谈我觉得公司项目和自己练手的项目有啥区别,欢迎补充。...区别 在视频练的项目大多数都是由讲师在本地编码来讲解整一个项目的开发过程,而我们去到公司做的第一件事是啥?把项目clone(checkout)到本地来看。...分析起来不方便 在公司一般将错误的信息(或者有用的信息)写到log(日志)中。...vim console.log吗,我想根据某个关键字来查怎么在vim上操作啊?
Docker Compose的特点 Docker Compose可以做很多事情,但是如果只考虑在开发环境里,它可以做下面这些事情: 管理整个应用的生命周期:启动、停止、重构建服务,而服务呢,其实就是运行的容器而已...现在我把这两个容器删掉(包括相应的镜像和网络都删掉吧),然后使用docker-compose来实现。 建立docker-compose.yml文件 ? 注意,我还没写完。...Core项目就报错了,它的容器就停掉了。...而过了一会postgres的服务才启动完成。。。 这也很好办,现在postgres的服务起来了,那么,我再手动启动一下ASP.NET Core Web的容器就可以了。...能删的都删除了,但这里postgres这个镜像无法删除是因为我还有其它容器使用该镜像。
=、== 和 === 是在编程中用于比较和赋值的操作符,它们有不同的含义和用途。 1、=:赋值操作符,用于将右侧的值赋给左侧的变量。 var x = 5; 上述代码将数字 5 赋值给变量 x。...console.log(5 == "5"); // 输出: true 上述代码中,5 和 "5" 在使用 == 进行比较时会被转换为相同的类型,然后判断它们的值是否相等。...3、===:严格相等比较操作符,用于比较两个值是否在类型和值上都相等,不进行类型转换。...console.log(5 === "5"); // 输出: false 上述代码中,5 和 "5" 在使用 === 进行比较时,它们的类型不同,因此返回 false。...=== 是严格相等比较操作符,不进行类型转换,要求类型和值都相等才返回 true。 在一般情况下,推荐使用 === 进行比较,因为它可以避免一些隐式类型转换的问题,提高代码的可读性和准确性。
举个例子,一个朋友拿了徐小平的天使投资做技能付费平台(对标Thumbtack),做的非常精致,运营的很好,但是获取一个有效用户要将近100块人民币,也做不出什么自然量,去年就收摊了。...这篇文章里,我大致整理过去在Uber增长团队师从Ed Baker, Andrew Chen等高手的领悟,和在摩拜带业务的经历,讲一下现在行业内的思路。 “增长”是什么?...慢慢大家都醒悟过来,开掉自己曾经的市场总监,招来替代他们的都是产品经理、产品运营和程序员了。 爆发期公司怎么做?(摩拜例子) 我在摩拜经历了从每天300万到每天2500万单的时期。...成熟公司的体系是什么样的?(Uber例子) 我之前在Uber总部的增长部门写代码,一开始做用户活跃(Engagement),后来主导了忠诚度计划(Loyalty Program)。...我本来打算跟随我的LinkedIn老板进入移动组,没想到直接分进了增长部门,在杨骥手下干活。(杨骥后来去了瓜子二手车做高级总监兼增长部老大)。其实这次改组是Facebook来的Ed Baker主导的。
抛开生产环境不说,主要聊聊我在开发环境中如何使用docker-compose的。...Docker-compose运行一堆Docker容器 Docker Compose允许你在一个名为docker-compose.yml的文件中运行一堆可以相互通信的Docker容器。...启动方式 我一直在通过运行docker-compose build来启动我的容器,然后运行docker-compose up来运行一切。...yaml文件中可以设置depends_on,以便更好地控制容器何时开始,但是对于我的服务开始顺序并不重要,所以我没有这样做。...总结 在此之前,作为一个开发人员,我在安装一个postgres或者MySQL数据库时候,花费很多时间安装部署,经常出现的问题就是基础环境中缺少依赖、依赖冲突、端口冲突等系统问题导致的无法安装,但自从有了
第2行拷贝requirements.txt文件到Docker的/code/目录。 第3行指明/code/为工作目录。 第4行在docker中安装需要的包。...可以在本机上执行容器中的命令,格式为:`docker exec 。 当你打算在容器中运行操作具体文件的命令,这些文件应该在容器自身的卷(volumes)中。...若要永久保存,需要将容器的volume映射到本地。以上分别建立的image之间并没什么关系,现在要用到docker-compose神器,部署多容器之间协作了。...注意db中environment的内容,在相同目录下新建.env文件存放环境变量: POSTGRES_USER=user1 POSTGRES_PASSWORD=123456 POSTGRES_DB=mydb...docker-compose建立和运行 输入以下命令建立docker-compose: $ docker-compose build 输入以下命令运行docker-compose: $ docker-compose
比如自建的博客想写什么随笔就写什么,可以自娱自乐不必取悦读者;再比如自建的 wiki 有不会的知识点就可以直接记录,不用担心被嘲笑低级。...下面我就介绍其中最快捷和通用的一种,即基于 Docker 的 Docker Compose 部署。...第二步,运行 docker-compose: 1、创建配置文件 docker-compose.yml 内容如下: 整个项目分为 数据库 和 项目代码 两部分,与之对应的是 pg 容器 和 wiki 容器...,执行命令: 运行:docker-compose up -d 查看容器:docker ps 停止:docker-compose down 最后,如果你想开启 HTTPS 的话,我这里推荐用 Caddy...start 启动 Caddy 服务器,浏览器中访问对应的域名,网站初始化的引导界面,就会出现在你的面前了。
我们可以在程序中捕获异常,并发送到 Sentry服务端进行聚合统计、展示和报警。sentry官方推荐docker方式安装,使用到了docker-compose。...而在短短的一年时间之内推出的1.12和1.13的版本在功能上确实是很大的进步。...这就很困惑了,sentry作为日志收集工具,用来收集和分析错误的项目日志是非常有用的。而现在却无法收集日志,相当于没用了。那么下面来看看到底是什么问题。...搭建完sentry之后,我在sentry里面创建了一个1111的项目: 那么故而言之,这里就是用来收集我某个laravel(如:1111)项目里面的日志信息的。...中发送测试事件,这次能够在sentry中看到捕获的日志了。
docker-entrypoint.sh" 3 minutes ago Up 3 minutes 3306/tcp hello.mysql 下面我们直接在容器中连接到我们刚刚创建的...准备.NET Core+EFCore+MySql项目 为了演示方便,我准备了一个ASP.NET Core+EFCore+MySql的示例项目。其结构如下所示: ?...这里需要特别注意一下--link=hello.mysql:db,这个参数就是告诉Docker容器需要使用hello.mysql容器,并将其别名命名为db,这样在hello.netcore.mysql这个容器中就可以使用...这也就是为什么我们.NET Core项目中连接字符串设置为server=db;的原因。...启动Compose 在启动Compose之前,建议清空上面创建的容器。也可以使用docker rm $(docker ps -qa)清除所有容器。
我的 docker-compose 采用 env_file 读取环境参数,然后把环境参数都写在 .env 文件里面,这样我就也可以在 docker-compose.yml 里面用环境变量,方便些。...和 Redis 的参数没有特殊的地方,只要注意容器内地址通讯即可,例如:DATABASE_URL=postgres://${DOCKER_POSTGRES_USER}:${DOCKER_POSTGRES_PASS...docker-compose 中我们启动了这个 Minio 的 docker 镜像,并把 /data 目录挂载到了本地持久存储。...Buckets,新建一个存储桶,名称就用 docker-compose 或者 .env 文件中设置的。...图片图片回到 docker-compose 和 .env 的目录,启动 docker-compose up -d。首次运行还需要创建数据库以及执行迁移。
静电说:Fimga中缺少扭曲工具一直是设计师小伙伴的心病,在日常的工作中,倾斜这个基本选项是很多效果必须的,但Figma却无法做到。更别说在无插件的情况下做各种透视效果,更高级的网格变形了。...今天静电给大家推荐几款Figma下做倾斜,扭曲和3D透视效果的插件。 也希望Figma下能在其基本功能中至少加入倾斜功能,要不还要拿到Sketch中进行变形就很尴尬了。...001.Skewdat-必装倾斜插件 感谢前几天朋友圈小伙伴的推荐,Skewdat插件基本上可以补足Figma基本的倾斜功能,它可以做X轴倾斜和Y轴倾斜,可以倾斜各种图层,甚至连文本图层都可以倾斜(这下不用打散了...不过大家不要相信用它可以做3D透视效果的图片,只有X和Y两个倾斜参数做出来的透视是不太理想的,建议只用它来做平面的倾斜效果就好。 总之,SkewDat是Figma使用者必装的插件,对!必装。...002.Angle Mockups -3D透视靠它 这款插件可以把一个Frame内容放置在一个有四个点的路径里,咱们直接看下图演示: 所以,理论上,你怎样做倾斜都是可以的,这样的方式可以做更精确的透视效果
Q 题目 在Oracle中,实例恢复和介质恢复的区别是什么? A 答案 Redo日志是Oracle为确保已经提交的事务不会丢失而建立的一种机制。...的时候,就会自动做实例恢复。...在RAC环境中,如果某个实例宕机了,那么剩下的实例将会代替宕掉的实例做实例恢复。除非是所有的实例都宕机了,这样的话,第一个执行ALTER DATABASE OPEN的实例将会做实例恢复。...那么,为什么数据库的实例恢复是先前滚再回滚呢?...有关实例恢复和介质恢复的区别如下表所示: & 说明: 有关实例恢复和介质恢复的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2126293
至于为什么不用 Nginx/Apache 等更为常见的程式,Caddy 性能方面确实不及它们,但是自动获取 SSL 证书以及过分简单的配置文件,让使用 Caddy 不要太方便;再就是和从 Tiny Tiny...# 先前台执行观察输出 docker-compose up # 确认无误后后台持续运行 docker-compose up -d 配置 完成之前的安装,在浏览器中输入设置的域名或服务器 IP + 端口的形式访问...用户名、密码、数据库分别对应之前 Docker Compose 配置文件中的 POSTGRES_USER、POSTGRES_PASSWORD、POSTGRES_DB;表前缀任意填;主机名要稍微注意一下,...这样在连接数据库这一步就可以填 172.17.0.1。但是不建议这么做。...我尝试过的 Tiny Tiny RSS 和 Inoreader 的导出文件均可成功导入 FreshRSS,相信大多时候都不会在这里遇到问题。
负片效果 灰度化处理 可删除图片 正确的数据库迁移 支持在列表中显示自己的图片 支持聊天窗口上正确显示预览图 支持设置图片有效期 支持ShareX API 支持ARM64和AMD64 Docker镜像...域名、IP 和 端口,按文章来的话,应该是 8003 IP 填写: 如果 Nginx Proxy Manager 和 picsur 在同一台服务器上,可以在终端输入: ip addr show docker0...比如这边我用的腾讯云的服务器搭建服务,NPM却是在莱卡云的服务器上的,所以这边我就需要填写腾讯云服务器的IP了 7.2 利用宝塔面板 发现还是有不少小伙伴习惯用宝塔面板,这边也贴一个宝塔面板的反代配置:...请不要使用 docker-compose stop 来停止容器,因为这么做需要额外的时间等待容器停止;docker-compose up -d 直接升级容器时会自动停止并立刻重建新的容器,完全没有必要浪费那些时间...结尾 祝大家用得开心,有问题可以去 GitHub 提 Issues,也可以在评论区互相交流探讨。 同时,有能力给项目做贡献的同学,也欢迎积极加入到 项目 中来,贡献自己的一份力量!
我正在学习Docker容器技术,相关笔记汇总在Docker容器技术 学习笔记汇总 这篇文章将以我目前正在研究的 lora-server 项目为例,研究下 Docker 在具体项目的实战应用,感受下...appserver、gatewaybridge、postgresql_ns、postgresql_as、redis、mosquitto loraserver、appserver、gatewaybridge是该开源项目做的应用程序...,后面四个是配套的数据库和MQTT代理组件,先不管。...2.启动 在该目录下执行 docker-compose up 命令,会整合输出所有容器的输出。 up 格式为 docker-compose up [options] [SERVICE...] 。...如果用户不希望容器被停止并重新创建,可以使用 docker-compose up --no-recreate 。这样将只会启动处于停止状态的容器,而忽略已经运行的服务。
写在前面 随着折腾的系统越来越多,我开始期望有一个地方能够将这些系统中的消息进行集中的呈现,让我能够快速清晰的了解到有什么有趣的新鲜的、重要的事情发生了,以及让我能够通过更简单的方式对已有系统中的数据进行快速的查询...于是,我开始彻底尝试切换思路,寻找一个上文中提到的,以时间轴为信息展示线索,能够和工具中的 Bot 互动,来记录我的想法、将各种我关注的事件实时汇聚到工具中,能够以简单的命令和方法查询各种系统中已有的数据...不过多数的服务维护者会采用让 CDN 动态回源的方案来进行实现,在忽略一定程度的数据一致性的前提下,这样的维护成本非常低,无需做任何调整和应用改动。...在《装在笔记本里的私有云环境:网络存储篇(上)》和《装在笔记本里的私有云环境:网络存储篇(中)》两篇内容中,我有介绍过如何使用 MinIO 来作为通用的存储网关使用。...下一篇文章中,我将聊聊如何针对性能进一步做一些调优操作,以及解决本文未解决完的一些问题。
(原谅我插入广告缅怀金庸大师,年少时期读的最多的书就是金庸大师的,遍布侠骨柔情大义啊)。这里的“真气”就是先掌握好jdk1.7和1.8,其它学不动的版本以后再说。...三、jdk1.8中HashMap的实现 在jdk1.8中HashMap的内部结构可以看作是数组(Node[] table)和链表的复合结构,数组被分为一个个桶(bucket),通过哈希值决定了键值对在这个数组中的寻址...0 : (h = key.hashCode()) ^ (h >>> 16); } 为什么HashMap为什么要树化? 之前在极客时间的专栏里看到过一个解释。本质上这是个安全问题。...一般情况下我们选用HashMap,因为HashMap的键值对在取出时是随机的,其依据键的hashCode和键的equals方法存取数据,具有很快的访问速度,所以在Map中插入、删除及索引元素时其是效率最高的实现...对HashMap做下总结: HashMap基于哈希散列表实现 ,可以实现对数据的读写。
♣ 题目部分 【DB笔试面试826】在Oracle中,ASH和AWR的关系是什么?...这样,对于长期检测Oracle的性能是不可能的。在Oracle 10g中,提供了永久保留ASH信息的方法,这就是AWR。...由于全部保存ASH中的信息是非常耗费时间和空间的,AWR采用的策略是:每小时对VACTIVE_SESSION_HISTORY进行采样一次,并将信息保存到磁盘中。...而AWR中的信息最长可能有1小时的延迟,所以,其采样信息并不能用于诊断数据库的当前状态,但可以用来作为一段时期内数据库性能调整的参考。 有关ASH和AWR的关系可以用下图来表示: ?...图 3-24 ASH和AWR的关系 本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗
题目 在Oracle中,SESSIONS和PROCESSES的关系是什么? 答案 在数据库安装完成后,常常需要设置SESSIONS和PROCESSES的大小。...其中,SESSIONS指定了一个实例中允许的会话数,即能同时登录到数据库的并发用户数。PROCESSES指定了一个实例在操作系统级别能同时运行的进程数,包括后台进程与服务器进程。...通过查找官方文档,可以知道SESSIONS参数的值在Oracle 10g和11g中是不同的,如下表所示: 属性Oracle 10gOracle 11gR2参数值的类型IntegerInteger默认值Derived...11gR1中,该参数值和10g是一样的,修改语句为“ALTER SYSTEM SET PROCESSES|SESSIONS=200 SCOPE=SPFILE;” 由于SESSIONS的值是根据PROCESSES...在Oracle 11gR2以下版本中,SESSIONS大小的计算公式为:(1.1 * PROCESSES) + 5;在Oracle 11gR2中,SESSIONS大小的计算公式为:(1.5 * PROCESSES
领取专属 10元无门槛券
手把手带您无忧上云