Tech

  • Published on
    这篇文章主要介绍了使用Python进行并行处理以提高质数计算效率的几种方法。文章比较了串行处理、简单并行处理、数据分块并行处理以及使用multiprocessing.Pool的并行处理方法,并分析了各种方法的性能差异。最终结论是,对于大规模数据,合适的并行处理方法可以显著提高计算效率。
  • Published on
    这篇文章主要讨论了微信红包系统的高性能复杂度分析和成本约束。文章介绍了2014年微信红包的使用数据,并详细分析了发红包、抢红包和看红包的架构设计。同时,文章还探讨了整体架构的设计思路,以及如何在保证高性能的同时进行成本优化。
  • Published on
    这篇文章讨论了软件架构设计中的几个关键方面,包括低成本、安全性、可测试性、可维护性和可观测性。文章强调了在设计架构时需要权衡各种因素,如成本与性能之间的平衡,以及安全性的不同层面。同时,文章指出可观测性是可测试性和可维护性的基础,对于设计良好的架构至关重要。
  • Published on
    这篇文章主要介绍了软件架构设计的概念、原则和方法。文章强调了架构设计应遵循合适、简单和演化三大原则,并通过具体案例说明了如何应用这些原则进行实际的架构设计。文章还指出,架构设计应该面向复杂度,根据系统的实际需求和团队能力来选择合适的架构方案,而不是盲目追求高大上的架构。
  • Published on
    这篇文章主要讨论了软件架构设计中的三个关键方面:可扩展性、高性能和高可用性。文章介绍了通过拆分和复用来提高系统的可扩展性,通过单机优化和集群设计来实现高性能,以及通过冗余和复制等方式来保证系统的高可用性。文章还提出了"鸡蛋篮子"理论,强调了在架构设计中合理分配和分解任务的重要性。
  • Published on
    介绍了Git的基本概念和常用操作。
  • Published on
    JavaScript的一些基础知识和概念。
  • Published on
    这篇文章主要介绍了CUDA、CUDNN和TensorRT之间的关系,以及如何选择和安装这些组件的版本。文章指出CUDA版本通常与新一代显卡架构相对应,并建议根据显卡选择合适的CUDA版本。同时,文章还提供了TensorRT的推荐版本以及与CUDA和CUDNN的兼容性信息,并给出了安装过程中的一些注意事项。
  • Published on
    这篇文章介绍了如何对视频进行笔记,包括解析字幕、提取图片和音频。文章提供了两段Python代码,分别用于将MP4文件转换为MP3音频文件和从视频中提取图片帧。
  • Published on
    使用Python的difflib库生成两个序列之间的差异,并以类似Word的track change方式展示。文章提供了一个Python代码示例,展示了如何使用SequenceMatcher类来比较两个字符串,并根据不同的样式选项生成带有HTML标记的差异结果。
  • Published on
    HTTP协议的发展历程,从HTTP 0.9到HTTP 2.0,以及HTTPS协议的工作原理。文章还简要介绍了Squid代理服务器的搭建,以及常见的加密算法如MD5、AES、RSA等。最后,文章讨论了前端JavaScript调试的一些技巧。
  • Published on
    这篇文章介绍了领域驱动设计(DDD)的核心概念和方法。文章强调了用户故事、通用语言、战略设计和战术设计在DDD中的重要性,并详细讲解了如何通过Domain Storytelling分析用户故事、建立通用语言、进行领域划分和识别限界上下文。文章还介绍了上下文映射的概念,展示了如何在实践中应用这些DDD方法。
  • Published on
    Python中asyncio模块的核心概念和使用方法。文章详细解释了事件循环、协程、任务和Future等重要概念,并通过代码示例展示了如何创建和运行异步任务。此外,文章还讨论了yield和yield from在实现协程中的作用,以及它们与asyncio的关系。
  • Published on
    这篇文章介绍了如何在Linux系统上安装和配置GCC 5.5.0版本。文章详细说明了下载、编译和安装GCC 5.5.0的步骤,以及如何使用update-alternatives命令配置多个GCC版本,使系统能够同时支持GCC 4.8.5和5.5.0版本。
  • Published on
    本文介绍了cuDNN的安装步骤,包括下载对应版本压缩包、解压文件、配置环境变量、复制头文件等操作。文章还提供了查看cuDNN版本的方法,以及CUDA、NVIDIA驱动和cuDNN之间的版本兼容性查询链接。
  • Published on
    在Linux系统上安装GPU驱动、CUDA和PyTorch的步骤和注意事项。文章详细说明了安装NVIDIA驱动、CUDA工具包的过程,以及可能遇到的问题和解决方法。此外,还提供了验证安装是否成功的方法,以及更换pip源和apt源的相关信息。
  • Published on
    这篇文章介绍了PyTorch中不同类型的乘法操作及其特性。文章详细解释了element-wise乘法(*)、矩阵乘法(@)、mm()、bmm()、mul()和matmul()等函数的用法和区别。同时,文章还讨论了这些操作对广播(broadcast)的支持情况,并简要说明了广播的规则。