中间件笔记
中间件到底是什么? 这周也本应该分享关于中间件的知识,但是实际的关于中间件的实战经验不是很多,今天就相关理论研究一番。有一个大致的框架。 中间件是指位于应用程序和操作系统之间的软件组件,用于协调和连接不同的系统、服务或组件,以实现数据传输、通信和功能扩展。它们在分布式系统、网络通信和应用集成中起着关键的作用。以下是一些常见的中间件及其功能: 消息队列中间件:消息队列中间件允许应用程序之间异步地发送和接收消息。常见的消息队列中间件包括 Apache Kafka、RabbitMQ、ActiveMQ 和 ZeroMQ。它们用于构建解耦、可扩展和可靠的分布式系统,实现应用解耦、流量削峰和任务异步处理等功能。 数据缓存中间件:数据缓存中间件用于将数据存储在高速缓存中,以提供快速的数据访问。Redis 和 Memcached 是两种常见的数据缓存中间件,它们支持键值存储和多种数据结构,如字符串、哈希表、列表等。缓存中间件可用于加速读取操作、减轻后端数据库的负载,并提供数据的临时存储。
最近的一些思考
本计划这周是分享中间件的大致知识框架,下周是运维部署相关,然后8月开始从前端、后端、中间价、部署运维等各部分进行详细深入的学习和分享。但计划不如变化快,现实发现自己无法严格按照计划进行自己的分享。思考总结了一部分原因,对于后期自己的成长也算是一种反馈警醒,也供读者朋友参考。 3月开始,从操作系统到网络,开发语言基础、前后端开发到部署运维的基础知识分享。再到六月完整的简单项目开发。但都停留在比较浅显的层面。所以下半年开始准备分享有一些思考加深度的内容。但计划第一周前端的分享就遇到了困难。 1、基础知识可以百度或者chatgpt代替,觉得没必要分享。而有内容的分享,应该是依靠实际例子的,而不是纯理论,而自己首先就要将分享的内容搞明白,这事就得花费不少时间。 2、自己的项目拿不出手,更新程度跟不上。 所以计划无法按时执行实现,有以下方面原因: (1)没有明确的目和优先级:没有目标就会感到迷失,无法集中精力去解决遇到的问题。而没有优先级,就会耗费时间在并不重要的环节上。 (2)不合理的时间安排:错误的时间估计,是潜在的延误因素。毕竟还需要搬砖,所以后期需要谨慎的评估完成时间。 (3)缺乏相关知识和技能:这应该是我目前遇到最重要的一环,那就是对所分享的内容理解度、把握程度不够,比如前端分享的时候更多的是站在运维开发的角度去分享,专业度肯定不够,需要主动学习请教相关技能知识。但相信在不断练习下,熟练使用是问题不大的。 (4)自律和时间管理: 如果在计划没什么问题的情况下,自律和合理的时间管理是必须的。后期需要设定目标的截止日期,根据优先级处理,避免拖延。
凌乱笔记
今日忙起来了,文章还没写呢。 今天注意到k8s原定7月12日补丁版1.27.4还未更新,官方目标日期为7月19日。 Monthly Patch Release Cherry Pick Deadline Target date July 2023 2023-07-14 2023-07-19
NPM依赖包升级
上一篇文章介绍了vue-cli和create-vue两款vue脚手架,现在官方已经推荐使用creat-vue进行项目的构建,知道cli是基于webpack构建的,每次都需要全部打包构建,而vite就不需要,所以vite速度是更快的。 还得说一下,因为今天用vue-cli脚手架生成项目,发现上篇文章说最后版本是5.0.7是不对的哈,抱歉,应该是停留在2022年7月7日的V5.0.8版本。 那么对于一些以前基于webpack的vue应用项目,如果转向vite,应用代码是需要改动的,如果项目比较复杂的话,就还是比较麻烦。么如何从Vue CLI迁移到Vite的内容,我需要另写一篇来介绍,感兴趣的可以先看下这篇内容: https://vueschool.io/articles/vuejs-tutorials/how-to-migrate-from-vue-cli-to-vite/ 那么,如果是vue cli创建的项目,那么npm依赖包的更新是必要的。所以来分享如何进行依赖包的更新。 npm更新依赖包:
VUE脚手架
vue-cli 仓库地址: https://github.com/vuejs/vue-cli/tree/dev 访问地址: https://cli.vuejs.org/ 版本已停留在2022年7月7日:V5.0.8 官方已经提示: Vue CLI 处于维护模式! 对于新项目,请使用 create-vue 来搭建基于 Vite 的项目的脚手架。
后端语言
今天没有学习后端相关知识。
VUE笔记
vue核心概念总结 响应式数据 (Reactive Data): Vue.js 的一个核心特性是数据的响应式。这意味着当数据发生变化时,相关的视图会自动更新。你可以使用 data 对象来定义响应式数据,并在模板中使用它们。 模板 (Templates): Vue.js 使用基于 HTML 的模板语法来声明视图。模板中可以包含 Vue.js 的指令、表达式和过滤器,用于控制和展示数据。
VUE核心概念
今天收到了阿里的人工智能模型“通义千问”的内测资格,试了一下,我也非专业人士,就不瞎评测了。只是对比百度文心一言,个人感觉不相上下,离chatgpt还是有一点差距的。但是对于一些简单问题或者代码编写还是完全够用的,心底里还是很欣慰的,毕竟有更多的选择对我们普通人是更友好的。 官网: https://qianwen.aliyun.com/ 上次分享了使用vue+ts+vite+antd+pnpm编写了一个简单的应用,在这里面我们其实就是一个熟悉前端工程化的过程,antd是ui组件、pnpm是包管理器,ts是js的超集,可以在编译时进行检查,而vite又是一个快速开发构建的工具,可以快速启动开发服务器并进行代码的编译和打包,支持热更新。总之利用这些工具和方法,能够大大的提升开发的效率。 今天就开始一点点根据自己收获进行分享: 1、ts(TypeScript)是js的超集,可以编译成普通的js,支持任意浏览器,任意系统,并且开源。怎么理解超集,简单理解应该是ts兼容js,但ts有更强大的功能。就是说ts是基于js基础上多了一个类型系统,可以在编译前帮你检查出错误,可以避免因为js没有类型约束导致的一些BUG,而往往这些BUG只有在运行的时候才能发现,会导致生产的故障。ts在编译的时候先将代码编译成js,才能在浏览器或者nodejs中执行。 如果对于ts还不太熟悉的话,就直接先上官网研究一下,如果会js的话,上手ts还是很容易,总之最好就是一边写一边学,效果会豪横多。 官网:https://www.typescriptlang.org/ 中文文档:https://typescript.bootcss.com/index.html
使用VUE+TS+ANTD+PNPM实现天气查询应用
上一篇介绍了前端工程化的一些东西,说要从vue开始学习,那么相比理论,直接进行开发实例能够更好的理解工程化带来的便利。说说今天要做的小应用,上一篇介绍了轮播图,这次就是查询天气卡片显示。 先说说实现的核心思路: 1、监听城市名 2、接口请求 3、接口数据返回 4、动态渲染页面 看看实现的完成图: 那么这个天气数据哪里来呢?就是三方的天气API接口,比如国家气象数据中心,实名注册后每天有20次调用次数,足够使用了,也可以使用第三方平台给的接口,可以自己搜索。
前端工程化
今天和一个资深的前端开发前辈聊了聊,我说作为一个非专业的前端爱好者,该怎么快速学习前端的知识。这位前辈这样说,“你应该庆幸你是因为爱好才学习前端知识,而不是为了谋生而学习。还有从开始就不要把自己作为一个业余的开发者去学习,只要是你爱好的就应该成为学习动力,努力之后一定可以成为专业的开发者。”这番话对我感触挺大的,有爱好并为之努力,一定可以收获更多。 然后这个前辈就分享了以前学习前端的过程,就是先用记事本写HTML页面结构,然后加入CSS进行排版美化页面,后来再写一些js代码增加交互功能,根据实际需求,需要多少页面就创建多少个页面。 但现在的前端开发,早就进入了工程化开发的时代,已经存在有各种现代化的框架,编译工具以及预处理器等等。 下面就传统和工程化的前端开发优劣介绍下: 传统开发:没有采用工程化工具和流程的情况下进行开发,通常需要开发者手动管理文件、依赖和构建过程。 优势: 1、入门快,不需要额外学习配置工具和流程 2、灵活,根据需求喜好选择合适工具,直接操作DOM 3、轻量:没有复杂的构建和工具依赖,项目体积小 劣势: 1、效率低,手动管理较多,缺乏自动化工具和流程 2、维护难,没有统一的代码风格,团队协作难 3、难扩展,缺少模块化和组件化