<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://blog.christianposta.com/getting-started-with-ext-gwt-the-mail-reference-application/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-apache-maven-with-ext-gwt/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-apache-maven-with-ext-gwt-part-ii/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/untangling-gxt-storeloader/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/solid-object-oriented-design-principles/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/crud-example-ext-gwt-spring-hibernate/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/why-should-we-waste-time-on-unit-tests-when-we-could-be-writing-functionality/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/response-to-flaw-in-object-oriented-modeling/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/a-useful-model-for-object-oriented-analysis-and-design/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/java-static-methods-can-be-a-code-smell/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/response-to-generalized-data-access-operations/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/design-never-stops/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/on-convincing-your-co-workers-tdd-is-a-good-thing/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-pysvn-to-get-a-tag-name-for-current-working-directory/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/pass-by-reference-java-is-pass-by-value/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/being-a-better-enterprise-architect/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/the-code-is-the-design/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/what-is-activemq/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/easier-way-to-create-custom-spring-config-namespaces-using-xbean-spring/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/what-is-spring-integration/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/backing-spring-integration-routes-with-activemq/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/programming-without-a-call-stack/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/mixins-in-python/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/maven-m2_home-and-intellij-on-a-mac/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/serious-about-your-software-career-leave-your-job/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-excel-templates-with-excel-mac-2011/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/focused-informative-documentation-for-activemq-camel-servicemix-and-cxf/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/why-im-excited-to-attend-camel-one/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/including-additional-artifacts-with-maven/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/rest-endpoint-for-integration-using-apache-camel/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-how-osgi-bundles-get-resolved-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/from-inside-the-code-activemq-network-connectors/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-how-osgi-bundles-get-resolved-part-ii/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/recap-from-camelone-2012/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/from-inside-the-code-camel-routebuilder-and-java-dsl/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/managing-large-deployments-of-mq-and-esb-with-fuse-fabric-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/part-ii-managing-large-deployments-of-mq-and-esb-with-fuse-fabric/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/getting-a-scala-def-main-to-run-with-intellij-idea/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fusesource-acquired-by-redhat-who-is-fusesource/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/introducing-apache-apollo-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/guaranteed-messaging-for-topics-the-jms-spec-and-activemq/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/benchmarking-your-jms-layer-with-an-open-source-jmstester-tool-from-fusesource/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/from-inside-the-code-activemq-network-bridges-and-demand-forward-subscriptions/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq-understanding-memory-usage/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/apache-apollo-rest-api/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/introduction-to-apache-apollo-ii-hawtdispatch/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel-essential-components-webinar/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/lean-distribution-of-activemq/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq-clustering-durable-subscribers-and-virtual-topics-to-the-rescue/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq-message-priorities-how-it-works/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/plugging-the-hawtio-monitoring-webapp-into-a-stand-alone-activemq-instance/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/join-me-at-camelone-this-june/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/new-activemq-book-just-released/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/successful-camelone-2013/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/deploying-activemq-for-high-availability-scenarios/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq-5-9-0-apache-apollo-at-phoenix-jug-in-september/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hawtio-activemq/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/from-inside-the-code-camel-routing-engine-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/new-features-in-activemq-5-9/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/light-weight-open-source-integration-apache-camel-or-spring-integration/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/50-off-packt-books/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/jms-style-selectors-on-amazon-sqs-with-apache-camel/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/jboss-fuse-6-1-hawtio-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/simplify-your-integrations-with-apache-camel/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/cooking-with-camel-new-cookbook-with-recipes-for-apache-camel/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/lessons-learned-activemq-apache-camel-and-connection-pooling/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/contract-first-web-service-integration-with-apache-camel-on-jboss-eap/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fuse-at-devnation-fabric8-camel-activemq-50-off/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/integration-platform-as-a-service-the-cloud-and-unicorns/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/jboss-fuse-on-openshift-paas-ipaas-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/video-simplify-your-integrations-with-apache-camel-and-fabric8/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/videos-jboss-fuse-on-openshift-detailed-walk-through/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/meet-fabric8-an-open-source-integration-platform-based-on-camel-and-activemq/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/devops-with-apache-tomcattomee-and-fabric8/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fabric8-http-gateway/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/jboss-fuse-devops-demo-step-by-step/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel-on-jboss-eap-with-custom-modules/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hawtio-on-jboss-wildfly-8-1/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hawtio-on-jboss-eap-part-ii/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/apache-camel-developers-cookbook-ebook-giveaway/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/developer-interview-3-my-interview-about-hawtio-and-fabric8/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/continuous-delivery-with-jenkins-gerrit-jboss-fuse-and-openshift-paas/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/easy-rest-endpoints-with-apache-camel-2-14/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/integrating-microservices-with-apache-camel/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/starting-multiple-jboss-a-mq-jvms-on-the-same-machine/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/youre-not-going-to-do-microservices/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/very-fast-camels-and-cloud-messaging/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/speeding-up-activemq-persistent-messaging-performance-by-25x/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/the-cost-of-code-reuse-abuse/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/see-you-at-devnexus-in-atlanta/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices-and-reducing-the-cost-of-change/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices-for-enterprises-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fuse-fabric-profile-migration-for-continuous-delivery/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/integration-testing-jboss-fuse-6-x-with-pax-exam-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/immutable-infrastructure-and-the-jvm-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/speaking-about-microservices-apache-camel-and-ci-cd-at-red-hat-summit/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/the-real-success-story-of-microservices-architectures/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/blue-green-deployments-a-b-testing-and-canary-releases/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/vjbug-cold-hard-truth/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/critical-hl7-usecases-with-camel-activemq-elasticsearch/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices-day-in-nyc/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/3-day-docker-and-kubernetes-training/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/logging-into-a-kubernetes-cluster-with-kubectl/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hi-performance-apis-for-microservices-with-baratine-io/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/quick-go-lang-for-java-developers/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-spring-data-with-apache-camel/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/devops-and-the-myth-of-efficiency-part-i/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/devops-and-the-myth-of-efficiency-part-ii/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/typesafe-kubernetes-dsl-for-yaml-json-generation/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/cloud-native-camel-riding-with-jboss-fuse-and-openshift/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/java-remote-debug-for-applications-running-in-kubernetes/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/message-durability-in-activemq-5-x/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/3-easy-things-to-do-to-make-your-microservices-more-resilient/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/why-microservices-should-be-event-driven-autonomy-vs-authority/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/netflix-oss-or-kubernetes-how-about-both/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/carving-the-java-ee-monolith-into-microservices-perfer-verticals-not-layers/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/my-book-has-been-released-microservices-for-java-developers/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/the-hardest-part-about-microservices-data/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/spring-boot-microservice-development-on-kubernetes-the-easy-way/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices-2-0/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/the-hardest-part-of-microservices-calling-your-services/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/00-microservices-patterns-with-envoy-proxy-series/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/01-microservices-patterns-with-envoy-proxy-part-i-circuit-breaking/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/02-microservices-patterns-with-envoy-proxy-part-ii-timeouts-and-retries/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/03-microservices-patterns-with-envoy-proxy-part-iii-distributed-tracing/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/application-network-functions-with-esbs-api-management-and-now-service-mesh/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/low-risk-monolith-to-microservice-evolution/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/when-not-to-do-microservices/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/low-risk-monolith-to-microservice-evolution-part-ii/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/low-risk-monolith-to-microservice-evolution-part-iii/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/deep-dive-envoy-and-istio-workshop/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/comparing-envoy-and-istio-circuit-breaking-with-netflix-hystrix/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/traffic-shadowing-with-istio-reduce-the-risk-of-code-release/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/advanced-traffic-shadowing-patterns-for-microservices-with-istio-service-mesh/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/how-a-service-mesh-can-help-with-microservices-security/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/our-book-has-been-released-introducing-istio-service-mesh-for-microservices/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/my-sessions-at-red-hat-summit-in-san-francisco/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/application-safety-and-correctness-cannot-be-offloaded-to-istio-or-any-service-mesh/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/its-not-about-microservices-vs-serverless/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/moving-on-from-red-hat/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/new-adventure-starts-at-solo-io/</loc>
<lastmod>2026-05-19T17:24:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/api-gateways-are-going-through-an-identity-crisis/</loc>
<lastmod>2019-01-21T17:54:23+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/navigating-the-complex-waters-of-exposing-a-microservices-gateway-in-aws-eks/</loc>
<lastmod>2019-02-08T02:10:27+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/guidance-for-building-a-control-plane-to-manage-envoy-proxy-based-infrastructure/</loc>
<lastmod>2019-02-12T17:01:56+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/guidance-for-building-a-control-plane-for-envoy-identify-components/</loc>
<lastmod>2019-02-18T20:36:17+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/guidance-for-building-a-control-plane-for-envoy-domain-specific-configuration-api/</loc>
<lastmod>2019-02-18T20:36:36+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/guidance-for-building-a-control-plane-for-envoy-build-for-pluggability/</loc>
<lastmod>2019-02-18T20:38:21+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/guidance-for-building-a-control-plane-for-envoy-deployment-tradeoffs/</loc>
<lastmod>2019-02-18T20:38:53+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/moving-the-service-mesh-community-forward/</loc>
<lastmod>2019-06-10T04:12:19+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/challenges-of-adopting-service-mesh-in-enterprise-organizations/</loc>
<lastmod>2019-10-16T16:04:28+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/istio-as-an-example-of-when-not-to-do-microservices/</loc>
<lastmod>2020-01-08T00:21:19+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/do-i-need-an-api-gateway-if-i-have-a-service-mesh/</loc>
<lastmod>2020-01-23T23:27:37+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/diving-into-istio-1-6-certificate-rotation/</loc>
<lastmod>2020-07-13T20:41:03+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-istio-telemetry-v2/</loc>
<lastmod>2021-04-27T01:08:04+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/does-platform-engineering-solve-the-people-problem/</loc>
<lastmod>2024-03-04T21:05:18+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/devops-shifted-too-far-left/</loc>
<lastmod>2024-04-25T17:37:20+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/a-gentle-introduction-to-llms-for-platform-engineers/</loc>
<lastmod>2025-02-03T22:19:11+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/running-nvidia-nim-with-the-kubernetes-nim-operator/</loc>
<lastmod>2025-02-05T20:26:56+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/building-content-moderation/</loc>
<lastmod>2025-02-25T20:26:56+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/simple-intro-to-autogen-assistantagent/</loc>
<lastmod>2025-02-28T22:07:07+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/learnings-from-load-testing-llms/</loc>
<lastmod>2025-03-19T01:18:19+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-mcp-recent-change-around-http-sse/</loc>
<lastmod>2025-03-27T14:27:47+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/the-updated-mcp-oauth-spec-is-a-mess/</loc>
<lastmod>2025-03-31T13:40:01+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/from-apis-to-capabilities-what-ai-agents-mean-for-application-architecture/</loc>
<lastmod>2025-04-10T03:30:57+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/semantics-matter-exposing-openapi-as-mcp-tools/</loc>
<lastmod>2025-04-20T10:00:00+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-mcp-and-a2a-attack-vectors-for-ai-agents/</loc>
<lastmod>2025-04-30T00:20:00+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/part-ii-mitigating-mcp-and-a2a-attack-vectors-for-ai-agents/</loc>
<lastmod>2025-05-06T02:01:28+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/prevent-mcp-tool-poisoning-attacks-with-a-registration-workflow/</loc>
<lastmod>2025-05-06T15:51:22+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/ai-reliability-engineering/</loc>
<lastmod>2025-05-14T15:49:23+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/do-we-even-need-agent-identity/</loc>
<lastmod>2025-06-02T17:33:05+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/apis-and-ai-agents-follow-the-same-layered-pattern/</loc>
<lastmod>2025-06-05T13:05:05+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/agent-identity-impersonation-or-delegation/</loc>
<lastmod>2025-06-10T00:34:30+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/ai-agents-and-oidc-ciba/</loc>
<lastmod>2025-06-17T12:56:51+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/cracks-in-our-identity-foundations/</loc>
<lastmod>2025-06-17T14:10:47+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/ai-agents-are-not-like-microservices-or-monoliths/</loc>
<lastmod>2025-06-19T14:49:57+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/agent-identity-and-access-management-can-spiffe-work/</loc>
<lastmod>2025-06-26T21:50:16+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-mcp-authorization-step-by-step/</loc>
<lastmod>2025-06-30T14:30:50+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-mcp-authorization-step-by-step-part-two/</loc>
<lastmod>2025-06-30T23:05:02+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-mcp-authorization-step-by-step-part-three/</loc>
<lastmod>2025-07-06T14:20:10+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/dynamic-agent-discovery-with-a2a-and-ans/</loc>
<lastmod>2025-07-07T16:44:54+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-mcp-authorization-with-dynamic-client-registration/</loc>
<lastmod>2025-07-10T15:51:55+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/enterprise-challenges-with-mcp-adoption/</loc>
<lastmod>2025-07-21T23:36:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/setting-up-a2a-oauth-user-delegation/</loc>
<lastmod>2025-07-28T18:47:19+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/implementing-mcp-dynamic-client-registration-with-spiffe/</loc>
<lastmod>2025-07-29T05:01:22+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/authenticating-mcp-oauth-clients-with-spiffe/</loc>
<lastmod>2025-07-29T05:02:15+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/mcp-authorization-patterns-upstream-api-calls/</loc>
<lastmod>2025-09-15T23:07:53+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/can-you-use-an-api-gateway-for-mcp/</loc>
<lastmod>2025-09-26T08:07:11+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/understanding-sessions-in-agent-to-agent-communication/</loc>
<lastmod>2025-09-26T22:34:37+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/building-an-mcp-gateway-on-top-of-apigee/</loc>
<lastmod>2025-09-27T23:22:59+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/mitigate-prompt-injection-attacks-with-a2as-and-agentgateway/</loc>
<lastmod>2025-10-07T01:57:15+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/api-keys-are-a-bad-idea-for-enterprise-llm-agent-and-mcp-access/</loc>
<lastmod>2025-10-19T17:48:13+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/mcp-should-be-remote/</loc>
<lastmod>2025-11-11T00:41:27+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/explaining-on-behalf-of-for-ai-agents/</loc>
<lastmod>2025-12-12T19:36:30+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/enterprise-mcp-sso-with-microsoft-entra-and-agentgateway/</loc>
<lastmod>2026-01-26T02:04:49+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/a-guide-to-microsoft-entra-agent-id-on-kubernetes/</loc>
<lastmod>2026-02-02T16:05:31+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/exploring-aauth-agent-auth-identity-and-access-management-for-ai-agents/</loc>
<lastmod>2026-02-17T01:25:53+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/connecting-saas-mcp-servers-to-enterprise-with-agentgateway/</loc>
<lastmod>2026-02-23T16:18:22+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/inbound-auth-for-agentcore-with-agentgateway/</loc>
<lastmod>2026-03-04T01:48:35+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/avoiding-mcp-confused-deputy-with-aauth/</loc>
<lastmod>2026-05-04T18:38:15+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/agent-identity/</loc>
<lastmod>2026-05-20T00:16:06+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/categories/</loc>
<lastmod>2026-05-20T00:16:06+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/tags/</loc>
<lastmod>2026-05-20T00:16:06+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/archives/</loc>
<lastmod>2026-05-20T00:16:06+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/about/</loc>
<lastmod>2026-05-20T00:16:06+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/enterprise/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/activemq/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/integration/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/camel/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/books/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/microservices/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/kubernetes/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/devops/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/gateway/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/containers/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/docker/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/talks/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/envoy/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/istio/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/service-mesh/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/security/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/sessions/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/api-gateway/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/identity/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/ai/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/mcp/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/authorization/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/oauth/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/a2a/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/agents/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/delegation/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/impersonation/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/oidc/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/spiffe/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/agentgateway/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/prompt-injection/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/on-behalf-of/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/entra/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/aauth/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/agentcore/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/general/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/integration/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/books-talks/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/microservices/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/kubernetes/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/devops/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/containers/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/service-mesh/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/api-gateway/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/ai-agents/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/categories/identity/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page2/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page3/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page4/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page5/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page6/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page7/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page8/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page9/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/page10/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/activemq-aws/reports/</loc>
<lastmod>2026-05-20T00:16:00+00:00</lastmod>
</url>
</urlset>
