<?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>2008-11-14T19:49:50+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-apache-maven-with-ext-gwt/</loc>
<lastmod>2008-12-02T02:56:46+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-apache-maven-with-ext-gwt-part-ii/</loc>
<lastmod>2008-12-04T00:32:52+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/untangling-gxt-storeloader/</loc>
<lastmod>2008-12-27T22:04:26+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/solid-object-oriented-design-principles/</loc>
<lastmod>2009-01-30T01:38:29+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/crud-example-ext-gwt-spring-hibernate/</loc>
<lastmod>2009-02-26T16:43:33+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>2009-06-12T16:14:59+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/response-to-flaw-in-object-oriented-modeling/</loc>
<lastmod>2010-01-19T14:51:30+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/a-useful-model-for-object-oriented-analysis-and-design/</loc>
<lastmod>2010-01-25T23:09:16+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/testing/java-static-methods-can-be-a-code-smell/</loc>
<lastmod>2010-02-15T16:35:07+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/response-to-generalized-data-access-operations/</loc>
<lastmod>2010-06-28T15:08:56+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/design/design-never-stops/</loc>
<lastmod>2010-08-13T18:47:44+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/on-convincing-your-co-workers-tdd-is-a-good-thing/</loc>
<lastmod>2011-03-23T22:57:40+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-pysvn-to-get-a-tag-name-for-current-working-directory/</loc>
<lastmod>2011-04-04T10:26:47+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/java/pass-by-reference-java-is-pass-by-value/</loc>
<lastmod>2011-08-15T23:42:35+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/rant/being-a-better-enterprise-architect/</loc>
<lastmod>2011-12-02T01:35:53+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/the-code-is-the-design/</loc>
<lastmod>2011-12-06T06:40:05+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/what-is-activemq/</loc>
<lastmod>2011-12-28T05:08:15+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/easier-way-to-create-custom-spring-config-namespaces-using-xbean-spring/</loc>
<lastmod>2012-01-05T01:48:36+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/spring-integration/what-is-spring-integration/</loc>
<lastmod>2012-01-26T22:42:47+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/spring-integration/backing-spring-integration-routes-with-activemq/</loc>
<lastmod>2012-01-31T21:44:35+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/programming-without-a-call-stack/</loc>
<lastmod>2012-02-08T23:30:06+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/python/mixins-in-python/</loc>
<lastmod>2012-02-20T22:04:43+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/maven-m2_home-and-intellij-on-a-mac/</loc>
<lastmod>2012-03-21T06:42:46+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/rant/serious-about-your-software-career-leave-your-job/</loc>
<lastmod>2012-04-02T22:45:21+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-excel-templates-with-excel-mac-2011/</loc>
<lastmod>2012-04-10T03:55:18+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fusesource/focused-informative-documentation-for-activemq-camel-servicemix-and-cxf/</loc>
<lastmod>2012-04-16T22:03:43+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camelone/why-im-excited-to-attend-camel-one/</loc>
<lastmod>2012-04-19T20:57:14+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/including-additional-artifacts-with-maven/</loc>
<lastmod>2012-04-24T02:09:46+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel/rest-endpoint-for-integration-using-apache-camel/</loc>
<lastmod>2012-04-25T21:38:41+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/osgi/understanding-how-osgi-bundles-get-resolved-part-i/</loc>
<lastmod>2012-05-01T01:45:22+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/from-inside-the-code-activemq-network-connectors/</loc>
<lastmod>2012-05-02T07:44:33+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/osgi/understanding-how-osgi-bundles-get-resolved-part-ii/</loc>
<lastmod>2012-05-08T07:17:14+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camelone/recap-from-camelone-2012/</loc>
<lastmod>2012-05-19T21:46:40+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel/from-inside-the-code-camel-routebuilder-and-java-dsl/</loc>
<lastmod>2012-05-22T01:41:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fabric8/managing-large-deployments-of-mq-and-esb-with-fuse-fabric-part-i/</loc>
<lastmod>2012-06-19T10:55:14+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fabric8/part-ii-managing-large-deployments-of-mq-and-esb-with-fuse-fabric/</loc>
<lastmod>2012-06-25T20:40:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/getting-a-scala-def-main-to-run-with-intellij-idea/</loc>
<lastmod>2012-06-28T01:11:38+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fusesource/fusesource-acquired-by-redhat-who-is-fusesource/</loc>
<lastmod>2012-06-28T03:13:55+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/apollo/introducing-apache-apollo-part-i/</loc>
<lastmod>2012-08-22T23:50:51+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/guaranteed-messaging-for-topics-the-jms-spec-and-activemq/</loc>
<lastmod>2012-08-27T19:43:20+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/benchmarking-your-jms-layer-with-an-open-source-jmstester-tool-from-fusesource/</loc>
<lastmod>2012-09-05T04:34:54+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/from-inside-the-code-activemq-network-bridges-and-demand-forward-subscriptions/</loc>
<lastmod>2012-10-08T14:39:52+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/activemq-understanding-memory-usage/</loc>
<lastmod>2012-11-28T14:59:44+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/apollo/apache-apollo-rest-api/</loc>
<lastmod>2012-12-31T19:02:19+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/apollo/introduction-to-apache-apollo-ii-hawtdispatch/</loc>
<lastmod>2013-01-02T15:09:07+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/webinar/camel-essential-components-webinar/</loc>
<lastmod>2013-01-10T13:30:00+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/lean-distribution-of-activemq/</loc>
<lastmod>2013-01-28T14:59:19+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/activemq-clustering-durable-subscribers-and-virtual-topics-to-the-rescue/</loc>
<lastmod>2013-02-21T18:58:29+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/activemq-message-priorities-how-it-works/</loc>
<lastmod>2013-04-01T01:28:15+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hawtio/plugging-the-hawtio-monitoring-webapp-into-a-stand-alone-activemq-instance/</loc>
<lastmod>2013-04-22T13:11:38+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camelone/join-me-at-camelone-this-june/</loc>
<lastmod>2013-05-08T17:58:32+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/new-activemq-book-just-released/</loc>
<lastmod>2013-05-30T22:48:10+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camelone/successful-camelone-2013/</loc>
<lastmod>2013-06-12T18:29:45+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/deploying-activemq-for-high-availability-scenarios/</loc>
<lastmod>2013-07-15T20:19:24+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/demo/activemq-5-9-0-apache-apollo-at-phoenix-jug-in-september/</loc>
<lastmod>2013-08-13T23:07:17+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/hawtio-activemq/</loc>
<lastmod>2013-08-13T23:09:31+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel/from-inside-the-code-camel-routing-engine-part-i/</loc>
<lastmod>2013-08-19T03:06:38+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/new-features-in-activemq-5-9/</loc>
<lastmod>2013-09-13T07:18:50+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/comparison/light-weight-open-source-integration-apache-camel-or-spring-integration/</loc>
<lastmod>2013-09-30T16:41:05+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/book/50-off-packt-books/</loc>
<lastmod>2013-10-16T16:56:25+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel/jms-style-selectors-on-amazon-sqs-with-apache-camel/</loc>
<lastmod>2013-10-23T00:31:55+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hawtio/jboss-fuse-6-1-hawtio-part-i/</loc>
<lastmod>2013-12-03T05:02:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/webinar/simplify-your-integrations-with-apache-camel/</loc>
<lastmod>2013-12-17T00:23:53+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/book/cooking-with-camel-new-cookbook-with-recipes-for-apache-camel/</loc>
<lastmod>2014-02-10T15:18:39+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/lesson-learned/lessons-learned-activemq-apache-camel-and-connection-pooling/</loc>
<lastmod>2014-03-03T02:25:48+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/contract-first-web-service-integration-with-apache-camel-on-jboss-eap/</loc>
<lastmod>2014-03-22T04:21:52+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/conference/fuse-at-devnation-fabric8-camel-activemq-50-off/</loc>
<lastmod>2014-03-24T13:27:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/cloud/integration-platform-as-a-service-the-cloud-and-unicorns/</loc>
<lastmod>2014-04-01T03:37:28+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/demo/jboss-fuse-on-openshift-paas-ipaas-part-i/</loc>
<lastmod>2014-04-04T23:31:45+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/demo/video-simplify-your-integrations-with-apache-camel-and-fabric8/</loc>
<lastmod>2014-04-14T17:31:30+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/demo/videos-jboss-fuse-on-openshift-detailed-walk-through/</loc>
<lastmod>2014-05-16T03:12:14+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fabric8/meet-fabric8-an-open-source-integration-platform-based-on-camel-and-activemq/</loc>
<lastmod>2014-05-27T19:29:28+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/demo/devops-with-apache-tomcattomee-and-fabric8/</loc>
<lastmod>2014-06-02T14:29:45+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fabric8/fabric8-http-gateway/</loc>
<lastmod>2014-06-18T13:42:13+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/demo/jboss-fuse-devops-demo-step-by-step/</loc>
<lastmod>2014-07-16T15:12:58+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel-on-jboss-eap-with-custom-modules/</loc>
<lastmod>2014-07-17T16:36:18+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hawtio/hawtio-on-jboss-wildfly-8-1/</loc>
<lastmod>2014-07-25T21:42:33+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/hawtio/hawtio-on-jboss-eap-part-ii/</loc>
<lastmod>2014-07-28T23:17:23+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel/apache-camel-developers-cookbook-ebook-giveaway/</loc>
<lastmod>2014-08-11T19:13:23+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/interview/developer-interview-3-my-interview-about-hawtio-and-fabric8/</loc>
<lastmod>2014-08-25T13:49:45+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/demo/continuous-delivery-with-jenkins-gerrit-jboss-fuse-and-openshift-paas/</loc>
<lastmod>2014-09-19T00:40:50+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel/easy-rest-endpoints-with-apache-camel-2-14/</loc>
<lastmod>2014-10-15T16:38:59+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/webinar/integrating-microservices-with-apache-camel/</loc>
<lastmod>2015-01-13T19:40:45+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/starting-multiple-jboss-a-mq-jvms-on-the-same-machine/</loc>
<lastmod>2015-01-14T15:16:37+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/youre-not-going-to-do-microservices/</loc>
<lastmod>2015-01-27T23:24:51+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/camel/very-fast-camels-and-cloud-messaging/</loc>
<lastmod>2015-02-23T17:05:28+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/speeding-up-activemq-persistent-messaging-performance-by-25x/</loc>
<lastmod>2015-02-25T22:14:39+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/design/the-cost-of-code-reuse-abuse/</loc>
<lastmod>2015-03-04T13:32:02+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/conference/see-you-at-devnexus-in-atlanta/</loc>
<lastmod>2015-03-05T02:03:58+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/microservices-and-reducing-the-cost-of-change/</loc>
<lastmod>2015-03-10T19:02:24+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices-for-enterprises-part-i/</loc>
<lastmod>2015-04-06T23:38:17+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fabric8/fuse-fabric-profile-migration-for-continuous-delivery/</loc>
<lastmod>2015-04-07T18:50:28+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/testing/integration-testing-jboss-fuse-6-x-with-pax-exam-part-i/</loc>
<lastmod>2015-04-29T05:35:06+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/immutable/immutable-infrastructure-and-the-jvm-part-i/</loc>
<lastmod>2015-05-19T01:57:43+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/conference/speaking-about-microservices-apache-camel-and-ci-cd-at-red-hat-summit/</loc>
<lastmod>2015-06-16T15:14:40+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/the-real-success-story-of-microservices-architectures/</loc>
<lastmod>2015-06-26T01:07:26+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/deploy/blue-green-deployments-a-b-testing-and-canary-releases/</loc>
<lastmod>2015-08-03T21:02:49+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/vjbug-cold-hard-truth/</loc>
<lastmod>2015-09-07T15:13:43+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/fuse/critical-hl7-usecases-with-camel-activemq-elasticsearch/</loc>
<lastmod>2015-10-06T03:49:40+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/microservices-day-in-nyc/</loc>
<lastmod>2015-10-13T03:12:54+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/kubernetes/3-day-docker-and-kubernetes-training/</loc>
<lastmod>2015-10-22T23:10:41+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/kubernetes/logging-into-a-kubernetes-cluster-with-kubectl/</loc>
<lastmod>2015-10-29T23:27:56+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/hi-performance-apis-for-microservices-with-baratine-io/</loc>
<lastmod>2015-11-03T12:44:52+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/programming/quick-go-lang-for-java-developers/</loc>
<lastmod>2015-11-12T00:40:23+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/using-spring-data-with-apache-camel/</loc>
<lastmod>2015-12-03T02:05:21+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/devops/devops-and-the-myth-of-efficiency-part-i/</loc>
<lastmod>2015-12-04T03:10:04+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/devops/devops-and-the-myth-of-efficiency-part-ii/</loc>
<lastmod>2015-12-04T03:10:08+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/typesafe-kubernetes-dsl-for-yaml-json-generation/</loc>
<lastmod>2016-01-22T13:01:29+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/cloud-native-camel-riding-with-jboss-fuse-and-openshift/</loc>
<lastmod>2016-02-02T15:52:57+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/kubernetes/java-remote-debug-for-applications-running-in-kubernetes/</loc>
<lastmod>2016-03-22T13:09:42+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/activemq/message-durability-in-activemq-5-x/</loc>
<lastmod>2016-05-20T16:41:04+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/3-easy-things-to-do-to-make-your-microservices-more-resilient/</loc>
<lastmod>2016-05-24T20:22:16+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/why-microservices-should-be-event-driven-autonomy-vs-authority/</loc>
<lastmod>2016-05-27T12:40:01+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/netflix-oss-or-kubernetes-how-about-both/</loc>
<lastmod>2016-06-02T14:57:04+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/carving-the-java-ee-monolith-into-microservices-perfer-verticals-not-layers/</loc>
<lastmod>2016-06-09T23:27:52+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/my-book-has-been-released-microservices-for-java-developers/</loc>
<lastmod>2016-06-28T14:41:14+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/the-hardest-part-about-microservices-data/</loc>
<lastmod>2016-07-14T15:21:07+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/spring-boot-microservice-development-on-kubernetes-the-easy-way/</loc>
<lastmod>2016-08-24T15:20:25+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/microservices-2-0/</loc>
<lastmod>2017-02-24T19:24:56+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/the-hardest-part-of-microservices-calling-your-services/</loc>
<lastmod>2017-04-25T03:33:49+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/00-microservices-patterns-with-envoy-proxy-series/</loc>
<lastmod>2017-05-26T12:34:38+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/01-microservices-patterns-with-envoy-proxy-part-i-circuit-breaking/</loc>
<lastmod>2017-05-26T12:34:38+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/02-microservices-patterns-with-envoy-proxy-part-ii-timeouts-and-retries/</loc>
<lastmod>2017-05-30T12:02:14+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/03-microservices-patterns-with-envoy-proxy-part-iii-distributed-tracing/</loc>
<lastmod>2017-06-06T04:01:08+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/application-network-functions-with-esbs-api-management-and-now-service-mesh/</loc>
<lastmod>2017-08-04T01:08:48+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/low-risk-monolith-to-microservice-evolution/</loc>
<lastmod>2017-09-19T17:09:46+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/when-not-to-do-microservices/</loc>
<lastmod>2017-09-28T17:45:36+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/low-risk-monolith-to-microservice-evolution-part-ii/</loc>
<lastmod>2017-10-13T03:40:09+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/low-risk-monolith-to-microservice-evolution-part-iii/</loc>
<lastmod>2017-10-18T18:44:08+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/deep-dive-envoy-and-istio-workshop/</loc>
<lastmod>2017-12-12T02:01:31+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/comparing-envoy-and-istio-circuit-breaking-with-netflix-hystrix/</loc>
<lastmod>2018-01-29T02:40:25+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/traffic-shadowing-with-istio-reduce-the-risk-of-code-release/</loc>
<lastmod>2018-02-07T12:52:40+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/advanced-traffic-shadowing-patterns-for-microservices-with-istio-service-mesh/</loc>
<lastmod>2018-02-21T13:26:30+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/how-a-service-mesh-can-help-with-microservices-security/</loc>
<lastmod>2018-03-22T23:12:59+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/our-book-has-been-released-introducing-istio-service-mesh-for-microservices/</loc>
<lastmod>2018-04-17T21:04:00+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/conference/my-sessions-at-red-hat-summit-in-san-francisco/</loc>
<lastmod>2018-04-30T23:30:25+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/application-safety-and-correctness-cannot-be-offloaded-to-istio-or-any-service-mesh/</loc>
<lastmod>2018-08-10T13:18:34+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/serverless/its-not-about-microservices-vs-serverless/</loc>
<lastmod>2018-09-14T20:54:43+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/moving-on-from-red-hat/</loc>
<lastmod>2018-12-18T13:04:45+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/career/new-adventure-starts-at-solo-io/</loc>
<lastmod>2019-01-02T14:44:58+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/microservices/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/envoy/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/envoy/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/envoy/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/servicemesh/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/microservices/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/microservices/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/ai/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/ai/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/ai/building-content-moderation/</loc>
<lastmod>2025-02-25T20:26:56+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/ai/simple-intro-to-autogen-assistantagent/</loc>
<lastmod>2025-02-28T22:07:07+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/ai/learnings-from-load-testing-llms/</loc>
<lastmod>2025-03-19T01:18:19+00:00</lastmod>
</url>
<url>
<loc>https://blog.christianposta.com/ai/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/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/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/posts/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/theme-setup/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/about/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/tags/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/</loc>
</url>
<url>
<loc>https://blog.christianposta.com/activemq-aws/reports/</loc>
<lastmod>2026-03-04T02:44:10+00:00</lastmod>
</url>
</urlset>
