Window Image in hub.cocker.com

envoy 的镜像位于 https://hub.docker.com/u/envoyproxy 之下,其中 Windows 包括如下 4 个版本。

  1. envoy-windows

    https://hub.docker.com/r/envoyproxy/envoy-windows
  2. envoy-windows-dev

    https://hub.docker.com/r/envoyproxy/envoy-windows-dev
  3. envoy-windows-ltsc2022

    https://hub.docker.com/r/envoyproxy/envoy-windows-ltsc2022
  4. envoy-windows-ltsc2022-dev

    https://hub.docker.com/r/envoyproxy/envoy-windows-ltsc2022
  5. envoy-build-windows2019

    https://hub.docker.com/r/envoyproxy/envoy-build-windows2019

在 Windows 上安装 Envoy

可以使用官方的 Windows Docker 镜像运行 Envoy

$ docker pull envoyproxy/envoy-windows-dev:af915efe430a670a9eed89bd57778657374acd4e
$ docker run --rm envoyproxy/envoy-windows-dev:af915efe430a670a9eed89bd57778657374acd4e --version

See: https://www.envoyproxy.io/docs/envoy/latest/start/install#install-envoy-on-windows

使用 Docker 安装 Envoy

使用官方 Docker 镜像来运行 Envoy.

下面的命令将拉取并显示当前镜像的版本

docker pull envoyproxy/envoy:dev-af915efe430a670a9eed89bd57778657374acd4e
docker run --rm envoyproxy/envoy:dev-af915efe430a670a9eed89bd57778657374acd4e --version

支持的 Tag

对于稳定版本的 Envoy 镜像和最新的小版本。

例如,如果最新版本的 v1.73.x 系列是 1.73.7,那么镜像被创建为

  • envoyproxy/envoy:x1.73.7
  • envoyproxy/envoy:v1.73-latest

类似的策略用于每个版本。

支持的架构

对于 Linux 构建和镜像来说,Envoy 项目目前支持 amd64arm64 架构

Issues of Envoy on Windows

https://github.com/envoyproxy/envoy/labels/area%2Fwindows

Windows Build

Currently, your releases include Linux binaries (which is an improvement, because before there were no binaries). However, the Windows binaries are still not included. This is a huge pain. Can we please include the Windows binaries in the releases for new releases?

https://github.com/envoyproxy/envoy/issues/24711

For the time being I believe the best option is to copy the executable out of the Windows Docker image. Hopefully this will change soon.

https://github.com/envoyproxy/envoy/issues/30374

windows is no longer supported by the project as it was mostly unused, came with a very high CI cost and was adding a lot of burden to devs

we are however open to fixes to make things work and if there is a community of users that rely on this would encourage setting up a downstream project to track Envoy changes

See: https://github.com/envoyproxy/envoy/issues/33561

获得 envoy.exe

在 GitHub 上有一个项目 extract-envoy. 介绍了如何使用 GitHub 的 Action 从 Windows 的镜像中提取 envoy.exe。

Extracts envoy.exe from the Envoy Proxy Windows container. envoy.exe can be found in Releases.

How it works

  1. Downloads static docker.exe and dockerd.exe for Windows
  2. Generates a daemon.json config for dockerd
  3. Starts the Docker daemon, dockerd
  4. Pulls the Envoy Windows iamge
  5. Creates a container of the Envoy image
  6. Copies envoy.exe out of the container
  7. Deletes the container
  8. Uploads envoy.exe as a release

并且提供了已经提取完成的二进制文件,见:https://github.com/eduphoria/extract-envoy/releases ,目前最新的版本是构建于 2023/3/4 的 v1.25.1

见:https://github.com/eduphoria/extract-envoy

直接执行的输出如下:

> ./envoy
[2024-04-22 12:55:19.334][50604][info][main] [source/server/server.cc:404] initializing epoch 0 (base id=0, hot restart version=disabled)
[2024-04-22 12:55:19.334][50604][info][main] [source/server/server.cc:406] statically linked extensions:
[2024-04-22 12:55:19.334][50604][info][main] [source/server/server.cc:408] envoy.thrift_proxy.filters: envoy.filters.thrift.header_to_metadata, envoy.filters.thrift.payload_to_metadata, envoy.filters.thrift.rate_limit, envoy.filters.thrift.router
[2024-04-22 12:55:19.334][50604][info][main] [source/server/server.cc:408] envoy.listener_manager_impl: envoy.listener_manager_impl.default
[2024-04-22 12:55:19.335][50604][info][main] [source/server/server.cc:408] envoy.path.rewrite: envoy.path.rewrite.uri_template.uri_template_rewriter
[2024-04-22 12:55:19.335][50604][info][main] [source/server/server.cc:408] envoy.matching.http.input: envoy.matching.inputs.destination_ip, envoy.matching.inputs.destination_port, envoy.matching.inputs.direct_source_ip, envoy.matching.inputs.dns_san, envoy.matching.inputs.request_headers, envoy.matching.inputs.request_trailers, envoy.matching.inputs.response_headers, envoy.matching.inputs.response_trailers, envoy.matching.inputs.server_name, envoy.matching.inputs.source_ip, envoy.matching.inputs.source_port, envoy.matching.inputs.source_type, envoy.matching.inputs.status_code_class_input, envoy.matching.inputs.status_code_input, envoy.matching.inputs.subject, envoy.matching.inputs.uri_san
[2024-04-22 12:55:19.335][50604][info][main] [source/server/server.cc:408] envoy.filters.http: envoy.bandwidth_limit, envoy.buffer, envoy.cors, envoy.csrf, envoy.ext_authz, envoy.ext_proc, envoy.fault, envoy.filters.http.adaptive_concurrency, envoy.filters.http.admission_control, envoy.filters.http.alternate_protocols_cache, envoy.filters.http.aws_lambda, envoy.filters.http.aws_request_signing, envoy.filters.http.bandwidth_limit, envoy.filters.http.buffer, envoy.filters.http.cache, envoy.filters.http.cdn_loop, envoy.filters.http.composite, envoy.filters.http.compressor, envoy.filters.http.cors, envoy.filters.http.csrf, envoy.filters.http.custom_response, envoy.filters.http.decompressor, envoy.filters.http.dynamic_forward_proxy, envoy.filters.http.ext_authz, envoy.filters.http.ext_proc, envoy.filters.http.fault, envoy.filters.http.gcp_authn, envoy.filters.http.grpc_http1_bridge, envoy.filters.http.grpc_http1_reverse_bridge, envoy.filters.http.grpc_json_transcoder, envoy.filters.http.grpc_stats, envoy.filters.http.grpc_web, envoy.filters.http.header_to_metadata, envoy.filters.http.health_check, envoy.filters.http.ip_tagging, envoy.filters.http.jwt_authn, envoy.filters.http.local_ratelimit, envoy.filters.http.lua, envoy.filters.http.match_delegate, envoy.filters.http.oauth2, envoy.filters.http.on_demand, envoy.filters.http.original_src, envoy.filters.http.rate_limit_quota, envoy.filters.http.ratelimit, envoy.filters.http.rbac, envoy.filters.http.router, envoy.filters.http.set_metadata, envoy.filters.http.stateful_session, envoy.filters.http.tap, envoy.filters.http.wasm, envoy.grpc_http1_bridge, envoy.grpc_json_transcoder, envoy.grpc_web, envoy.health_check, envoy.ip_tagging, envoy.local_rate_limit, envoy.lua, envoy.rate_limit, envoy.router
[2024-04-22 12:55:19.335][50604][info][main] [source/server/server.cc:408] envoy.http.header_validators: envoy.http.header_validators.envoy_default
[2024-04-22 12:55:19.335][50604][info][main] [source/server/server.cc:408] envoy.matching.common_inputs: envoy.matching.common_inputs.environment_variable
[2024-04-22 12:55:19.335][50604][info][main] [source/server/server.cc:408] envoy.quic.server.crypto_stream: envoy.quic.crypto_stream.server.quiche
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.matching.input_matchers: envoy.matching.matchers.consistent_hashing, envoy.matching.matchers.ip
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.retry_priorities: envoy.retry_priorities.previous_priorities
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.matching.network.input: envoy.matching.inputs.application_protocol, envoy.matching.inputs.destination_ip, envoy.matching.inputs.destination_port, envoy.matching.inputs.direct_source_ip, envoy.matching.inputs.dns_san, envoy.matching.inputs.server_name, envoy.matching.inputs.source_ip, envoy.matching.inputs.source_port, envoy.matching.inputs.source_type, envoy.matching.inputs.subject, envoy.matching.inputs.transport_protocol, envoy.matching.inputs.uri_san
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.transport_sockets.downstream: envoy.transport_sockets.alts, envoy.transport_sockets.quic, envoy.transport_sockets.raw_buffer, envoy.transport_sockets.starttls, envoy.transport_sockets.tap, envoy.transport_sockets.tcp_stats, envoy.transport_sockets.tls, raw_buffer, starttls, tls
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.formatter: envoy.formatter.metadata, envoy.formatter.req_without_query
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.resolvers: envoy.ip
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.http.stateful_session: envoy.http.stateful_session.cookie, envoy.http.stateful_session.header
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.dubbo_proxy.protocols: dubbo
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.tracers: envoy.tracers.opentelemetry, envoy.tracers.skywalking, envoy.tracers.xray, envoy.tracers.zipkin, envoy.zipkin
[2024-04-22 12:55:19.336][50604][info][main] [source/server/server.cc:408] envoy.filters.http.upstream: envoy.buffer, envoy.filters.http.admission_control, envoy.filters.http.buffer, envoy.filters.http.upstream_codec
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.thrift_proxy.protocols: auto, binary, binary/non-strict, compact, twitter
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.connection_handler: envoy.connection_handler.default
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.route.early_data_policy: envoy.route.early_data_policy.default
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.request_id: envoy.request_id.uuid
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.wasm.runtime: envoy.wasm.runtime.null
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.config.validators: envoy.config.validators.minimum_clusters, envoy.config.validators.minimum_clusters_validator
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.access_loggers: envoy.access_loggers.file, envoy.access_loggers.http_grpc, envoy.access_loggers.open_telemetry, envoy.access_loggers.stderr, envoy.access_loggers.stdout, envoy.access_loggers.tcp_grpc, envoy.access_loggers.wasm, envoy.file_access_log, envoy.http_grpc_access_log, envoy.open_telemetry_access_log, envoy.stderr_access_log, envoy.stdout_access_log, envoy.tcp_grpc_access_log, envoy.wasm_access_log
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] network.connection.client: default, envoy_internal
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.common.key_value: envoy.key_value.file_based
[2024-04-22 12:55:19.337][50604][info][main] [source/server/server.cc:408] envoy.dubbo_proxy.serializers: dubbo.hessian2
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.matching.network.custom_matchers: envoy.matching.custom_matchers.trie_matcher
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.retry_host_predicates: envoy.retry_host_predicates.omit_canary_hosts, envoy.retry_host_predicates.omit_host_metadata, envoy.retry_host_predicates.previous_hosts
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.health_checkers: envoy.health_checkers.redis, envoy.health_checkers.thrift
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] quic.http_server_connection: quic.http_server_connection.default
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.http.custom_response: envoy.extensions.http.custom_response.local_response_policy, envoy.extensions.http.custom_response.redirect_policy
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.regex_engines: envoy.regex_engines.google_re2
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.dubbo_proxy.filters: envoy.filters.dubbo.router
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.http.cache: envoy.extensions.http.cache.simple
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.quic.connection_id_generator: envoy.quic.deterministic_connection_id_generator
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.access_loggers.extension_filters: envoy.access_loggers.extension_filters.cel
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.http.original_ip_detection: envoy.http.original_ip_detection.custom_header, envoy.http.original_ip_detection.xff
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.clusters: envoy.cluster.eds, envoy.cluster.logical_dns, envoy.cluster.original_dst, envoy.cluster.static, envoy.cluster.strict_dns, envoy.clusters.aggregate, envoy.clusters.dynamic_forward_proxy, envoy.clusters.redis
[2024-04-22 12:55:19.338][50604][info][main] [source/server/server.cc:408] envoy.compression.compressor: envoy.compression.brotli.compressor, envoy.compression.gzip.compressor, envoy.compression.zstd.compressor
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.guarddog_actions: envoy.watchdog.abort_action, envoy.watchdog.profile_action
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.http.stateful_header_formatters: envoy.http.stateful_header_formatters.preserve_case, preserve_case
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.network.dns_resolver: envoy.network.dns_resolver.cares, envoy.network.dns_resolver.getaddrinfo
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.path.match: envoy.path.match.uri_template.uri_template_matcher
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.grpc_credentials: envoy.grpc_credentials.aws_iam, envoy.grpc_credentials.default, envoy.grpc_credentials.file_based_metadata
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.upstream_options: envoy.extensions.upstreams.http.v3.HttpProtocolOptions, envoy.extensions.upstreams.tcp.v3.TcpProtocolOptions, envoy.upstreams.http.http_protocol_options, envoy.upstreams.tcp.tcp_protocol_options
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.thrift_proxy.transports: auto, framed, header, unframed
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.matching.action: envoy.matching.actions.format_string, filter-chain-name
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.compression.decompressor: envoy.compression.brotli.decompressor, envoy.compression.gzip.decompressor, envoy.compression.zstd.decompressor
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.internal_redirect_predicates: envoy.internal_redirect_predicates.allow_listed_routes, envoy.internal_redirect_predicates.previous_routes, envoy.internal_redirect_predicates.safe_cross_scheme
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.rate_limit_descriptors: envoy.rate_limit_descriptors.expr
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.load_balancing_policies: envoy.load_balancing_policies.least_request, envoy.load_balancing_policies.random, envoy.load_balancing_policies.round_robin
[2024-04-22 12:55:19.339][50604][info][main] [source/server/server.cc:408] envoy.udp_packet_writer: envoy.udp_packet_writer.default
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.filters.network: envoy.echo, envoy.ext_authz, envoy.filters.network.connection_limit, envoy.filters.network.direct_response, envoy.filters.network.dubbo_proxy, envoy.filters.network.echo, envoy.filters.network.ext_authz, envoy.filters.network.http_connection_manager, envoy.filters.network.local_ratelimit, envoy.filters.network.mongo_proxy, envoy.filters.network.ratelimit, envoy.filters.network.rbac, envoy.filters.network.redis_proxy, envoy.filters.network.sni_cluster, envoy.filters.network.sni_dynamic_forward_proxy, envoy.filters.network.tcp_proxy, envoy.filters.network.thrift_proxy, envoy.filters.network.wasm, envoy.filters.network.zookeeper_proxy, envoy.http_connection_manager, envoy.mongo_proxy, envoy.ratelimit, envoy.redis_proxy, envoy.tcp_proxy
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.quic.proof_source: envoy.quic.proof_source.filter_chain
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.transport_sockets.upstream: envoy.transport_sockets.alts, envoy.transport_sockets.http_11_proxy, envoy.transport_sockets.internal_upstream, envoy.transport_sockets.quic, envoy.transport_sockets.raw_buffer, envoy.transport_sockets.starttls, envoy.transport_sockets.tap, envoy.transport_sockets.tcp_stats, envoy.transport_sockets.tls, envoy.transport_sockets.upstream_proxy_protocol, raw_buffer, starttls, tls
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.upstreams: envoy.filters.connection_pools.tcp.generic
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.stats_sinks: envoy.dog_statsd, envoy.graphite_statsd, envoy.metrics_service, envoy.stat_sinks.dog_statsd, envoy.stat_sinks.graphite_statsd, envoy.stat_sinks.hystrix, envoy.stat_sinks.metrics_service, envoy.stat_sinks.statsd, envoy.stat_sinks.wasm, envoy.statsd
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.bootstrap: envoy.bootstrap.internal_listener, envoy.bootstrap.wasm, envoy.extensions.network.socket_interface.default_socket_interface
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.resource_monitors: envoy.resource_monitors.fixed_heap, envoy.resource_monitors.injected_resource
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.filters.udp_listener: envoy.filters.udp.dns_filter, envoy.filters.udp_listener.udp_proxy
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.tls.cert_validator: envoy.tls.cert_validator.default, envoy.tls.cert_validator.spiffe
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.filters.listener: envoy.filters.listener.http_inspector, envoy.filters.listener.original_dst, envoy.filters.listener.original_src, envoy.filters.listener.proxy_protocol, envoy.filters.listener.tls_inspector, envoy.listener.http_inspector, envoy.listener.original_dst, envoy.listener.original_src, envoy.listener.proxy_protocol, envoy.listener.tls_inspector
[2024-04-22 12:55:19.340][50604][info][main] [source/server/server.cc:408] envoy.matching.http.custom_matchers: envoy.matching.custom_matchers.trie_matcher
[2024-04-22 12:55:19.341][50604][info][main] [source/server/server.cc:408] envoy.http.early_header_mutation: envoy.http.early_header_mutation.header_mutation
[2024-04-22 12:55:19.341][50604][info][main] [source/server/server.cc:408] envoy.rbac.matchers: envoy.rbac.matchers.upstream_ip_port
[2024-04-22 12:55:19.341][50604][critical][main] [source/server/server.cc:131] error initializing configuration '': At least one of --config-path or --config-yaml or Options::configProto() should be non-empty
[2024-04-22 12:55:19.341][50604][info][main] [source/server/server.cc:972] exiting
At least one of --config-path or --config-yaml or Options::configProto() should be non-empty
PS C:\software\envoy>

关于 Envoy on Windows的更多相关文章

  1. Prometheus及Grafana监控服务的安装使用

    说明 Prometheus 是一个开放性的监控解决方案,通过 Node Exporter 采集当前主机的系统资源使用情况,并通过 Grafana 创建一个简单的可视化仪表盘. docker 安装 pr ...

  2. 渗透测试学习 二、Windows基础

    系统目录  服务  端口  注册表  黑客常用DOS命令(在拿到shell时会用到) 一.  系统目录 Windows目录  系统的安装目录 System32àconfigàSAM文件  是用户密码的 ...

  3. php 中 envoy 的使用方法

    相关文档:中文文档.英文文档 envoy 是什么? envoy 是一个支持 blade 语法的 ssh 远程命令执行的工具.具体来说就是,通过配置 ssh 的账号.密码.key 这些,然后可以使用 e ...

  4. Skywalking入门介绍,skywalking6.5.0 +mysql (windows) 搭建

    一. 介绍 1. 基本信息 SkyWalking 创建于2015年,提供分布式追踪功能.从5.x开始,项目进化为一个完成功能的Application Performance Monitoring系统. ...

  5. Redis过滤器如何与Envoy代理一起使用

    1.克隆源码到机器 [root@cx-- ~]# git clone https://github.com/envoyproxy/envoy Cloning into 'envoy'... remot ...

  6. envoy开发调试环境搭建

    image 前段时间研究envoy的filter开发,在windows机器环境上面折腾了会,这里记录一下,希望能够帮助到大家少走一些坑 主要是使用vscode devContainer的方式来搭建开发 ...

  7. Windows server 2012 添加中文语言包(英文转为中文)(离线)

    Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...

  8. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  9. C# 注册 Windows 热键

    闲扯: 前几日,一个朋友问我如何实现按 F1 键实现粘贴(Ctrl+V)功能,百度了一个方法,发给他,他看不懂(已经是 Boss 的曾经的码农),我就做了个Demo给他参考.今日得空,将 Demo 整 ...

  10. Windows 7上执行Cake 报错原因是Powershell 版本问题

    在Windows 7 SP1 电脑上执行Cake的的例子 http://cakebuild.net/docs/tutorials/getting-started ,运行./Build.ps1 报下面的 ...

随机推荐

  1. 《Vue.js 设计与实现》读书笔记 - 第8章、挂载与更新

    第8章.挂载与更新 8.1 挂载子节点和元素的属性 扩展子元素的类型可以为数组,并判断如果是数组的话,就先依次挂载所有的子元素. 同时新增节点属性.属性可以通过 el.setAttribute 添加到 ...

  2. linux中backport printk和front printk的区别

    在Linux内核中,"backport printk"和"front printk"都是用于记录内核消息和调试信息的机制,但它们的工作方式和使用场景有一些区别. ...

  3. 将数组数据转化成树形结构 tranListToTreeData

    export function tranListToTreeData(list, rootValue) { // list是最完整的数组 let arr = []; // 记录儿子 list.forE ...

  4. MySQL 通过 Next-Key Locking 技术(行锁+间隙锁)避免幻读问题

    在MySQL中,InnoDB引擎通过Next-Key Locking技术来解决幻读问题.幻读是一种事务并发问题,通常出现在Repeatable Read隔离级别下的范围查询操作中.幻读的现象是,事务在 ...

  5. WEB渗透01_渗透测试方法论

    前言 这个系列是根据一个网络安全教程学习的笔记. 1 渗透测试 渗透测试,是为了证明网络防御按照预期计划正常运行而提供的一种机制.不妨假设,你的公司定期更新安全策略和程序,时时给系统打补丁,并采用了漏 ...

  6. SpringBoot用户头像上传

    1.上传到本地服务器 controller层主要以MultipartFile接收即可,这里返回给前端的该文件保存后的相对路径 @RequestMapping(value = "/applic ...

  7. 版本库控制系统的切磋之路[Git & SVN]

    集中式和分布式   集中式版本库控制系统 :SVN ; 分布式版本库控制系统 :Git . 集中式 版本库是存在中央服务器的.干活使用的是自己的电脑,每次干活前都是从服务器上拉下最新的代码版本,然后才 ...

  8. docker存储配置与管理--项目三

    一.Docker存储概念 1.容器本地存储与Docke存储驱动 容器本地存储:每个容器都被自动分配了内部存储,即容器本地存储.采用的是联合文件系统.通过存 储驱动进行管理. 容器本地存储空间:分层结构 ...

  9. 如果一个接口不使用token鉴权,应该怎么保持在登录状态下进行测试?

    1.token是接口中用于身份验证和授权的令牌,用户通过登录操作,服务器会返回一个token,这个token会在后续的请求中发送到服务器,用来证明用户的身份和权限. 2.如果接口没有token,可以使 ...

  10. 洛谷 NOIP 2023 模拟赛 T2 汪了个汪

    洛谷 NOIP 2023 模拟赛 T2 汪了个汪 考试建出正解图不知道怎么处理,题解区樱雪喵博客薄纱. 樱雪喵题解链接 Ps:笔者语文爆炸,不建议阅读本文 思路 首先你会发现,一共有 \(\frac{ ...