日常软件所使用的开发系统

本文详细比较了腾讯QQ和Bilibili的技术选型,涉及客户端开发(C++/LinuxvsReact.js/Vue.js),服务器端技术(TCP/IP/UDPvsJava/Go),数据库使用(MySQL/Elasticsearch),大数据与AI应用,容器化、CDN、移动端开发、安全措施、DevOps实践,以及云计算和微服务架构等。
摘要由CSDN通过智能技术生成

QQ

腾讯QQ的开发分客户端软件和服务器端软件两部分。

客户端采用 Microsoft Visual C++开发;

服务器端软件采用Linux gcc开发 ;

数据库采用MySql 数据库。

腾讯QQ采用标准的TCP/IP协议为通信协议。

腾讯QQ客户端之间的消息传送也采用了UDP模式,

这不同于国外的ICQ在客户端之间采用TCP进行通讯的模式
 

哔哩哔哩

  1. 前端开发:Bilibili 使用了 React.js 和 Vue.js 等现代 JavaScript 框架进行前端开发,以提供更快的页面加载速度和更好的用户体验。
  2. 后端开发:Bilibili 的后端开发主要使用了 Java 和 Go 两种语言,并使用了大量的分布式系统技术,如 RPC(远程过程调用)、MQ(消息队列)等。
  3. 数据库技术:Bilibili 使用了多种数据库技术,包括 MySQL、Redis、Elasticsearch 等。其中,Elasticsearch 被用于搜索引擎,Redis 用于缓存,MySQL 用于存储用户信息、视频信息等核心数据。
  4. 大数据技术:Bilibili 的大数据平台使用了 Hadoop、Spark、Kafka 等技术,用于分析用户行为、生成推荐系统等。
  5. AI 技术:Bilibili 还在推荐算法、自然语言处理、图像识别等领域使用了 AI 技术,以提供更好的用户体验。
  6. 容器技术:Bilibili 使用了容器化技术,如 Docker 和 Kubernetes 等,来管理应用程序和服务,以便更快地部署和扩展系统。
  7. CDN 技术:Bilibili 使用了全球 CDN(内容分发网络)技术,以提供更快的网站加载速度和更好的视频播放体验。
  8. 移动端开发:Bilibili 的移动应用程序主要使用了 React Native 和 Flutter 等跨平台框架进行开发,以同时支持 iOS 和 Android 平台。
  9. 安全技术:Bilibili 使用了多种安全技术,如 Web 应用程序防火墙、反爬虫技术、数据加密和备份等,以保护用户的隐私和数据安全。
  10. DevOps:Bilibili 还积极推行 DevOps 理念,以提高开发和运维效率,加快产品交付速度,减少故障时间和改善用户满意度。
  11. 云计算:Bilibili 使用了云计算技术,如阿里云和腾讯云等,以满足其不断增长的业务需求,并能够快速扩展和缩减其服务器资源。
  12. 微服务架构:Bilibili 运用微服务架构将应用程序拆分成多个小型、自治的服务,每个服务只关注自己的职责,使得开发、测试和部署更加容易和快速。
  13. 分布式存储:Bilibili 使用了分布式存储技术,如 HDFS 和 Ceph 等,以支持其海量视频和用户数据的存储和访问。
  14. 高可用性:Bilibili 的架构采用了多种高可用性技术,如负载均衡、自动故障转移、多活数据中心等,以保证系统的可靠性和稳定性。
  15. 开源软件:Bilibili 也贡献了多个开源软件项目,如 MySQL 高可用集群管理工具 TIDB,以及基于 Go 的高性能网络框架 Kratos 等。
  16. GraphQL:Bilibili 采用 GraphQL 技术来实现前端与后端的数据交互,GraphQL 可以帮助前端开发者更好地描述所需数据的结构和关系,减少请求次数和数据传输量,提高性能和用户体验。
  17. DevSecOps:Bilibili 将安全集成到 DevOps 流程中,采用自动化测试、漏洞扫描、代码审查、安全监控等手段,以确保应用程序和服务的安全性和可靠性。
  18. Serverless:Bilibili 使用 Serverless 技术,如 AWS Lambda 和云函数等,以部署和运行无服务器的应用程序和服务,减少资源浪费和管理成本,提高开发和部署效率。
  19. 消息中间件:Bilibili 使用了多个消息中间件,如 Kafka、RabbitMQ 等,以实现异步任务处理、解耦和缓冲系统间的通信,提高系统性能和可扩展性。
  20. 日志和监控:Bilibili 使用了多个日志和监控工具,如 ELK、Prometheus、Grafana 等,以收集和分析应用程序和服务的日志、指标和报警,快速发现和解决问题

微信

1、iOS平台开发语言为Objective-C,开发者一般使用苹果公司开发的ios sdk 搭建开发环境, iOS SDK是开发iPhone和iPad 应用程序过程中必不可少的软件开发包,提供了从创建程序,到编译,调试,运行,测试等一些列开发过程中所需要的工具。

2、安卓 Android开发语言为java,开发者一般是用谷歌公司开发的android sdk搭建开发环境,使用Java进行安卓应用的开发。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值