swarwick
Currently a Solutions Architect at AWS. Still love to poke around in code and keep my head in the game.
AmazonUnited States
Pinned Repositories
amazon-kinesis-data-analytics-apache-flink-server-sent-events-sse
When dealing with real-time data it is often required to send that data over the internet to various sources. Various technologies have enabled this such as web sockets and long polling. Recently server-sent events (SSE) has become a popular technology to push updates to clients. Ingesting this type of data source into AWS requires a client to be running continuously to receive those events. This sample shows how to connect to an SSE endpoint using an Amazon Kinesis Data Analytics application using Apache Flink. As the events arrive they are published to an Amazon Kinesis Data Streams stream then in this sample we simply store the event data in Amazon S3.
api-gateway-websocket-saas-rate-limiting-using-aws-lambda-authorizer
When creating a SaaS multi-tenant systems which require websocket connections we need a way to rate limit those connections on a per tenant basis. With Amazon API Gateway you have the option to use usage plans with HTTP connections however they are not available for websockets. To enable rate limiting we can use a API Gateway Lambda Authorizer to validate a connection and control access. Using a Lambda Authorizer we can implement code to allow the system to valid connection rates and throttle inbound connections on a per tenant basis. This sample also demonstrates pool and silo modes for handling the message traffic per tenant.
aws-cdk-for-discourse
AWS CDK for Discourse
aws-fargate-server-sent-events-sse-amazon-kinesis-data-streams
When dealing with real-time data it is often required to send that data over the internet to various sources. Various technologies have enabled this such as web sockets and long polling. Recently server-sent events (SSE) has become a popular technology to push updates to clients. Ingesting this type of data source into AWS requires a client to be running continuously to receive those events. This sample shows how to connect to an SSE endpoint using AWS Fargate. This sample creates a docker image with a simple SSE client which publishes to an Amazon Kinesis Data Streams stream, then we simply store the event data in Amazon S3.
serverless-patterns
Serverless patterns. Learn more at the website: https://serverlessland.com/patterns.
single-use-signed-url
AWS CDK to create a CloudFront distribution with a request Lambda to allow single use signed URL file downloads. Each file is tracked by an identifier which is stored in a DynamoDB database. Each request will check the identifier against values stored in the database. If the identifier is found the file process continues and the files is received, the id is then removed from the database. If the identifier is not found the system will perform a 302 redirect to a specified URL.
aws-innovation-sandbox
The AWS Innovation Sandbox solution provisions isolated, self-contained, environments to help developers, security professionals, and infrastructure teams to securely evaluate, explore, and build proof-of-concepts (POCs) using AWS services and third-party applications that run on AWS.
AWSCognitoUserPools
contrib
Core Flogo activities, triggers and functions that are useful across the various event-driven action types.
flogo
Flogo addons
swarwick's Repositories
swarwick/aws-innovation-sandbox
The AWS Innovation Sandbox solution provisions isolated, self-contained, environments to help developers, security professionals, and infrastructure teams to securely evaluate, explore, and build proof-of-concepts (POCs) using AWS services and third-party applications that run on AWS.
swarwick/AWSCognitoUserPools
swarwick/contrib
Core Flogo activities, triggers and functions that are useful across the various event-driven action types.
swarwick/flogo
Flogo addons
swarwick/flogo-contrib
Flogo Contribution repo. Contains activities, triggers, models and actions.
swarwick/moquette
Java MQTT lightweight broker
swarwick/parquet-mr
Mirror of Apache Parquet
swarwick/PostProcessingPlugin
ARCHIVED; Now part of Cura itself.
swarwick/smile
Statistical Machine Intelligence & Learning Engine
swarwick/twitter4j
Twitter4J is an open-sourced, mavenized and Google App Engine safe Java library for the Twitter API which is released under the Apache License 2.0.