- 博客(234)
- 资源 (4)
- 收藏
- 关注
原创 【Python】多线程的使用以及注意事项
Python中的多线程允许你并行地执行多个任务,从而充分利用多核CPU的优势。然而,由于Python的全局解释器锁(GIL)的存在,标准的Python线程在CPU密集型任务上可能并不会带来真正的并行执行优势。但在IO密集型任务(如网络通信、文件读写等)上,多线程仍然可以提高程序的整体性能。
2024-07-17 19:59:32
928
原创 【Python】面向对象:类,继承、初始化、调用函数、方法
面向对象编程(Object-Oriented Programming,简称OOP)是一种程序设计模型,它将对象作为程序的基本单元,以提高软件的可重用性、灵活性和扩展性。Python是一种支持面向对象编程的语言。在Python中,面向对象编程主要涉及以下几个核心概念:类(Class)、对象(Object)、封装(Encapsulation)、继承(Inheritance)、多态(Polymorphism)
2024-07-17 19:47:42
1084
原创 【SpringBoot3】使用os-maven-plugin为项目自动添加常用的变量
`os-maven-plugin` 是一个 Maven 扩展/插件,它根据 `${os.name}` 和 `${os.arch}` 生成各种有用的、与平台相关的项目属性,并将这些属性标准化。`${os.name}` 和 `${os.arch}` 在不同的 JVM 和操作系统版本之间往往存在细微的差异,或者它们有时包含对机器不友好的字符,如空格。此插件试图消除这种碎片化,以便您可以可靠地确定当前的操作系统和架构。
2024-07-08 18:17:48
835
原创 【SpringBoot3】结合 gRpc 实现远程服务调用
gRPC(Google Remote Procedure Call,Google远程过程调用)是一个现代开源高性能远程过程调用(RPC)框架,可以在任何环境中运行。它由Google开发,旨在帮助开发人员更轻松地构建分布式应用,特别是当代码可能在不同地方运行的时候。gRPC是一个高性能、开源和通用的RPC框架,它基于HTTP/2设计,并支持多种编程语言和平台。随着其开源和广泛应用,gRPC已成为云原生计算基金会(CNCF)的一个孵化项目,被大量组织和企业采用。
2024-07-08 18:16:19
921
原创 【SpringBoot3】结合 gRpc 通过 proto文件生成Java代码
Protobuf(Protocol Buffers)是由Google开发的一种灵活、高效、自动化的结构化数据序列化方法,类似于XML、JSON等,但更小、更快、更简单。它主要用于网络通信和数据存储等场景,广泛应用于各种编程语言中。
2024-07-05 19:45:01
695
原创 【SpringBoot3】使用Jasypt加密数据库用户名、密码等敏感信息
使用Jasypt(Java Simplified Encryption)进行数据加密和解密主要涉及几个步骤,包括引入依赖、配置加密密码、加密敏感信息、将加密信息存储到配置文件中,以及应用程序启动时自动解密。
2024-07-03 20:13:07
1268
原创 【Python】使用NumPy处理数组以及常用函数总结
NumPy(Numerical Python的简称)是一个用于处理数组(特别是多维数组)和矩阵运算的Python库,同时也提供了大量的高级数学函数来操作这些数组。NumPy构建在Python之上,为Python提供了大量的数学计算功能,并极大地提升了Python在执行大量数学计算和数组操作时的性能和效率。
2024-06-20 16:35:42
961
原创 【Python】使用matplotlib绘制图形(曲线图、条形图、饼图等)
matplotlib 是一个用于创建静态、动态和交互式可视化图形的 Python 库。它被广泛用于数据可视化,并且可以与多种操作系统和图形后端一起工作。matplotlib 提供了一套与 MATLAB 相似的命令 API,适合交互式制图,也可以作为绘图控件嵌入到其他应用程序中。matplotlib 的主要组成部分是 pyplot,它是一个类似于 MATLAB 的绘图框架。pyplot 提供了一个 MATLAB 式的接口,可以隐式地创建图形和轴,使得绘图变得简单。
2024-06-20 16:34:51
2908
原创 【docker】常用指令-表格整理
以下列出的指令是Docker中常用的命令,但并不是全部。Docker的指令非常丰富,可以根据具体的需求和场景选择合适的指令。同时,每个指令都有很多选项和参数可以使用,可以通过 `docker COMMAND --help` 来获取更详细的信息。
2024-06-17 14:47:57
1062
原创 【爬虫】requests 结合 BeautifulSoup抓取网页数据
BeautifulSoup 是一个用于从 HTML 或 XML 文件中提取数据的 Python 库。结合requests轻松实现网页数据抓取,并以json形式存储。使用 pandas 和 matplotlib 库将抓取到的数据可视化。
2024-06-14 17:12:09
1193
原创 【Ai】使用LabelStudio做数据标注
LabelStudio是一个功能丰富、灵活便捷、易于使用的数据标注工具,适用于各种机器学习和深度学习项目中的数据标注工作
2024-06-11 18:01:01
1270
2
原创 【Python】使用Gradio作为机器学习web服务器
在机器学习领域,模型的展示和验证是一个重要的环节。传统的模型展示方式往往需要复杂的Web开发知识,这对于许多机器学习研究者或数据科学家来说可能是一个挑战。然而,Gradio的出现为我们提供了一个简单而强大的解决方案,让我们能够轻松地将机器学习模型转化为交互式的Web应用。
2024-06-07 18:28:32
979
原创 【Python】使用Quart作为web服务器
Quart 是一个异步的 Web 框架,它使用 ASGI 接口(Asynchronous Server Gateway Interface)而不是传统的 WSGI(Web Server Gateway Interface)。这使得 Quart 特别适合用于构建需要处理大量并发连接的高性能 Web 应用程序。与 Flask 类似,Quart 也非常灵活,可以轻松地构建 RESTful API、WebSockets、HTTP/2 服务器推送等。
2024-06-06 18:52:31
665
原创 【Python】使用flask作为web服务器
Flask 是一个基于 Python 的微型 Web 开发框架,主要面向小型应用和开发初期需求简单的项目。相比于 Django 这种重量级的框架,Flask 更加轻量级,易于使用和部署。它提供了基本的路由、模板渲染、错误处理等 Web 开发的核心功能,但保持了足够的灵活性,允许开发者根据需要选择和添加其他库来扩展功能
2024-06-04 17:34:52
1100
原创 【Python】sklearn.datasets使用(数据集、常用函数、示例代码)
sklearn.datasets 中包含了多种多样的数据集,这些数据集主要可以分为以下几大类:玩具数据集(Toy datasets)、真实世界中的数据集(Real-world datasets)、样本生成器(Sample generators)、样本图片(Sample images)、SVMLight或LibSVM格式的数据、从OpenML下载的数据。sklearn.datasets 模块提供了多个函数来加载和生成数据集,包括:加载数据集、生成数据集、图像数据集。
2024-05-22 17:12:34
1880
原创 【Python】scikit-learn 常用算法模型
scikit-learn是一个广泛使用的Python机器学习库,提供了大量的算法和工具用于数据预处理、模型训练、模型评估等
2024-05-22 17:02:55
980
原创 【Python】scikit-learn 数据预处理总结
数据预处理是数据准备阶段的一个重要环节,主要目的是将原始数据转换成适合机器学习模型使用的格式,同时处理数据中的缺失值、异常值、重复值、不一致性等问题。数据预处理可以显著提高机器学习模型的性能和准确度。
2024-05-17 19:54:23
822
原创 【Python】使用scikit-learn做数据挖掘和分析
Scikit-learn,也被称为sklearn,是一个针对Python编程语言的免费软件机器学习库,是一个功能强大、易用且广泛应用的Python机器学习库,为数据科学家和开发者提供了丰富的工具和资源来进行机器学习任务的开发与实践。Scikit-learn起源于David Cournapeau的Google Summer of Code项目,名为scikits.learn。Scikit-learn提供了各种分类、回归和聚类算法,包括支持向量机(SVM)、随机森林、梯度提升、k-均值和DBSCAN等。
2024-05-17 17:42:50
1602
原创 【Python】使用pandas分析整理数据
Python的pandas包是一个强大的数据分析工具,它提供了丰富的数据结构和函数,使得数据清洗、处理和分析变得简单高效pandas最初由AQR Capital Management于2008年4月开发,作为金融数据分析工具。它于2009年底开源,并由PyData开发团队继续开发和维护。pandas的名称来源于面板数据(panel data)和Python数据分析(data analysis)的结合。
2024-05-17 11:53:13
825
1
原创 【Python】使用requests采集数据存入mysql或文件
requests包是一个使用Python编写的HTTP请求库,使得发送HTTP请求和处理HTTP响应变得更加简单。requests包主要用于与HTTP交互,能够发送HTTP请求和处理HTTP响应。它支持处理HTTP响应的内容,如JSON和XML数据。requests包是一个功能强大、易用性高的Python HTTP请求库,适用于各种网络编程场景,无论是简单的数据抓取还是复杂的网络交互任务都能轻松应对。
2024-05-15 10:50:06
681
原创 【Python】使用pymysql操作Mysql数据库
pymysql 是一个 Python 库,用于连接和操作 MySQL 数据库。通过 `pymysql`,Python 程序员可以轻松地与 MySQL 数据库进行交互,执行 SQL 查询,以及插入、更新或删除数据。
2024-05-15 10:44:26
961
1
原创 【Python】使用SQLAlchemy操作Mysql数据库
SQLAlchemy是Python的SQL工具包和对象关系映射(ORM)库,它提供了全套的企业级持久性模型,用于高效、灵活且优雅地与关系型数据库进行交互。使用SQLAlchemy,你可以通过Python类来定义数据库表的结构,并通过这些类与数据库进行交互,而无需编写复杂的SQL语句。
2024-05-10 18:02:59
2399
1
原创 【docker】Spring Boot Layered Jar:优化Docker镜像构建与部署的新方案
背景:传统的 Spring Boot Jar 包是一个包含所有依赖、资源和应用程序代码的“胖”Jar(fat Jar)。这种结构在每次代码变更时都需要重新构建和上传整个 Jar 包,这会导致存储和时间的浪费,特别是在网络速度较慢的情况下。Layered Jar:为了解决这个问题,Spring Boot 引入了 Layered Jar 的概念。Layered Jar 将应用程序的不同部分(如依赖库、Spring Boot 加载器、应用程序代码等)分隔到不同的层中。这样,当应用程序代码发生变化时,只需要重新
2024-05-08 14:50:37
986
原创 Oracle VM VirtualBox虚拟机安装配置
1. 首先,需要从Oracle官方网站下载VirtualBox的最新版本。2. 下载完成后,双击安装包开始安装。按照安装向导的提示,同意许可协议,并选择安装位置。3. 在安装过程中,可以根据需要选择是否创建快捷方式、是否安装USB支持等附加功能。4. 完成安装后,打开VirtualBox,你会看到一个空白的虚拟机列表。
2024-04-18 18:25:25
1685
原创 【数仓】数仓建模理论及步骤,ER建模,维度建模,星形模型,雪花模型,数据分层
数据仓库是一个面向主题、集成的、非易失的且随时间变化的数据集合。它主要用于组织、积累历史数据,并使用分析方法(如OLAP、数据分析)进行分析整理,以辅助决策,为管理者、企业系统提供数据支持、构建商业智能。数据仓库的特点包括面向主题性、集成性、非易失性和时变性。数仓建模的目标是在性能、成本、效率和数据质量之间找到最佳平衡点
2024-04-18 16:25:01
2046
1
原创 【数仓】DataX 通过SpringBoot项目自动生成 job.json 文件
DataX的任务脚本job.json格式基本类似,而且我们在实际同步过程中通常都是一个表对应一个job,那么如果需要同步的表非常多的话,需要编写的job.json文件也非常多。既然是类似文件结构,那么我们就有办法通过程序自动生成相关的job.json文件。
2024-04-10 10:22:59
1159
原创 【数仓】DataX软件安装及配置,从mysql同步到hdfs
DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。
2024-03-26 19:39:38
1423
原创 【数仓】通过Flume+kafka采集日志数据存储到Hadoop
通过将数据从不同的数据源采集并传输到指定的目的地,Flume可以帮助企业实现数据的集中存储和管理,为后续的数据分析和挖掘提供基础。它主要用于将大量的日志数据从不同的数据源收集起来,然后通过通道(Channel)进行传输,最终将数据传输到指定的目的地,如HDFS、HBase等。上表中的参数是最常用的,但并不是所有的参数都在所有版本的Flume中都可用。
2024-03-09 23:16:05
2405
11
原创 【数仓】Maxwell软件安装及配置,采集mysql数据
Maxwell是一个读取MySQL binlogs(二进制日志)的应用程序,它的主要作用是将MySQL中的变更数据(包括insert、update、delete等操作)实时捕获,并将这些变更数据以JSON格式发送到Kafka、Kinesis、RabbitMQ等流数据处理平台。总的来说,在数仓中,Maxwell的作用主要是实时捕获MySQL中的变更数据,并将这些数据以流的形式发送到下游处理平台,从而实现数据的实时同步和处理。
2024-03-08 19:30:42
2031
原创 【数仓】Kafka消息可视化工具:Offset Explorer(原名kafka Tool)
Offset Explorer(以前称为Kafka Tool)是一个用于管理和使用Apache Kafka®集群的GUI应用程序。它提供了一个直观的界面,允许用户快速查看Kafka集群中的对象以及集群主题中存储的消息。它包含面向开发人员和管理员的功能。Offset Explorer仅供个人使用。未经购买许可,不得进行任何非个人使用,包括商业,教育和非营利工作。非个人使用可在下载Offset Explorer后的30天内进行评估,之后您必须购买有效许可证或删除该软件。
2024-03-08 09:10:52
4064
3
原创 【数仓】flume常见配置总结,以及示例
Flume的核心组件包括Source、Channel和Sink。Source负责从数据源中读取数据,可以是文件、网络套接字、消息队列等;Channel是数据的缓冲区,用于在Source和Sink之间传输数据;Sink负责将数据写入目标存储系统,如HDFS、HBase、Kafka等。此外,Flume还支持多种类型的Source、Channel和Sink,用户可以根据实际需求进行选择和配置。
2024-03-06 09:36:31
1026
原创 【数仓】flume软件安装及配置
Apache Flume是一个分布式、可靠且可用的大数据日志采集、聚合和传输系统。它主要用于将大量的日志数据从不同的数据源收集起来,然后通过通道(Channel)进行传输,最终将数据传输到指定的目的地,如HDFS、HBase等。Flume具有高度可扩展性、容错性和灵活性,可以适应各种复杂的数据采集场景
2024-03-06 09:33:45
1448
原创 【SpringBoot3】应用程序启动监听
应用启动监听在 Spring Boot 和其他框架中扮演着重要的角色。它们的主要作用是在应用启动或关闭时触发特定的操作或任务。
2024-03-04 23:55:35
1728
4
原创 【SpringBoot3】Spring Boot Event 自定义事件的发布与监听
Spring Boot自定义事件是Spring框架中事件处理机制的一种扩展,它允许开发者在Spring Boot应用程序中定义、发布和监听自己的事件。这些事件可以用于在应用程序的不同组件之间进行通信,实现解耦和异步处理。通过自定义事件,开发者可以更加灵活地处理业务逻辑,提高系统的可扩展性和可维护性。
2024-03-04 23:31:02
2637
原创 【数仓】kafka软件安装及集群配置
Kafka集群的配置涉及多个方面,包括broker、Zookeeper、producer和consumer的配置。不过,通常我们主要关注的是broker和Zookeeper的配置,因为它们是构成Kafka集群的基础。以上只是Kafka配置的一部分,实际上Kafka的配置项非常多,可以根据具体的需求和场景进行调整。请注意,配置项的默认值可能会随着Kafka版本的更新而发生变化,因此建议查阅对应版本的官方文档以获取最准确的信息。:监听的网络端口和协议,用于客户端和其他brokers的连接。
2024-03-02 10:59:12
1696
8
原创 【数仓】zookeeper软件安装及集群配置
考虑到事务日志的写入性能会直接影响到ZooKeeper的整体性能,因此建议将事务日志存储在一个专门的、拥有良好I/O性能的磁盘上。它是以毫秒为单位的,并且ZooKeeper中所有的时间都是以这个为基础进行整数倍的配置。在配置ZooKeeper集群时,还需要设置一些其他的参数,如server.x配置项,用于指定ZooKeeper集群中的服务器地址和端口等信息。:这是ZooKeeper集群中的Follower服务器与Leader服务器之间初始连接时能容忍的最多心跳数(以tickTime为单位)。
2024-03-02 10:52:40
958
原创 【数仓】Hadoop集群配置常用参数说明
Hadoop集群中,需要配置的文件主要包括四个:核心Hadoop参数、HDFS参数、MapReduce参数、YARN参数
2024-03-01 15:07:28
1248
2
原创 程序员是如何看待“祖传代码”的?
随着时间的推移,尽管技术栈、开发工具和编程范式可能已经发生了翻天覆地的变化,但“祖传代码”依然坚守岗位,稳定地为公司或项目提供着服务。虽然随着时间的推移,公司的业务可能已经发生了很大的变化,但这些独特的逻辑依然具有重要的历史价值,可以帮助我们更好地理解公司的发展历程。因此,在处理“祖传代码”时,程序员需要特别小心和谨慎。这些代码可能是由前几代程序员编写的,经过岁月的洗礼,它们依然在运行,支撑着公司的核心业务。而在程序员社区中,“祖传代码”则成为了一种特殊的文化符号,代表着程序员对技术的敬畏和对历史的尊重。
2024-02-29 22:29:59
921
1
视频解说设计模式,设计模式的由来,分类,以及关联
2024-01-03
快速排序算法解说,动画演示
2024-01-03
归并排序解说,动画演示
2024-01-03
希尔排序算法解说,动画演示
2024-01-03
选择排序算法解说,动画演示
2024-01-03
排序算法详解,动画演示
2024-01-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人