Skip to content

Commit b009775

Browse files
committed
Jersey startup time improvements (#366)
1 parent 7308601 commit b009775

File tree

4 files changed

+21
-5
lines changed

4 files changed

+21
-5
lines changed

aws-serverless-jersey-archetype/src/main/resources/archetype-resources/src/main/java/StreamLambdaHandler.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
import org.glassfish.jersey.jackson.JacksonFeature;
1010
import org.glassfish.jersey.server.ResourceConfig;
11+
import org.glassfish.jersey.server.ServerProperties;
1112

1213
import java.io.IOException;
1314
import java.io.InputStream;
@@ -18,8 +19,15 @@
1819

1920
public class StreamLambdaHandler implements RequestStreamHandler {
2021
private static final ResourceConfig jerseyApplication = new ResourceConfig()
21-
.register(PingResource.class)
22-
.register(JacksonFeature.class);
22+
// properties to speed up Jersey start time
23+
.property(ServerProperties.FEATURE_AUTO_DISCOVERY_DISABLE,true)
24+
.property(ServerProperties.WADL_FEATURE_DISABLE,true)
25+
.property(ServerProperties.METAINF_SERVICES_LOOKUP_DISABLE,true)
26+
.property(ServerProperties.BV_FEATURE_DISABLE,true)
27+
.property(ServerProperties.JSON_PROCESSING_FEATURE_DISABLE,true)
28+
.property(ServerProperties.MOXY_JSON_FEATURE_DISABLE,true)
29+
.register(PingResource.class)
30+
.register(JacksonFeature.class);
2331
private static final JerseyLambdaContainerHandler<AwsProxyRequest, AwsProxyResponse> handler
2432
= JerseyLambdaContainerHandler.getAwsProxyHandler(jerseyApplication);
2533

samples/jersey/pet-store/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ dependencies {
1313
'io.symphonia:lambda-logging:1.0.1'
1414
)
1515

16-
implementation("org.glassfish.jersey.media:jersey-media-json-jackson:2.30.1") {
16+
implementation("org.glassfish.jersey.media:jersey-media-json-jackson:2.35") {
1717
exclude group: 'com.fasterxml.jackson.core', module: "jackson-annotations"
1818
exclude group: 'com.fasterxml.jackson.core', module: "jackson-databind"
1919
exclude group: 'com.fasterxml.jackson.core', module: "jackson-core"
2020
}
2121

22-
implementation("org.glassfish.jersey.inject:jersey-hk2:2.30.1") {
22+
implementation("org.glassfish.jersey.inject:jersey-hk2:2.35") {
2323
exclude group: 'javax.inject', module: "javax.inject"
2424
}
2525
}

samples/jersey/pet-store/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
<dependency>
3535
<groupId>com.amazonaws.serverless</groupId>
3636
<artifactId>aws-serverless-java-container-jersey</artifactId>
37-
<version>[0.1,)</version>
37+
<version>[1.0,)</version>
3838
</dependency>
3939

4040
<dependency>

samples/jersey/pet-store/src/main/java/com/amazonaws/serverless/sample/jersey/StreamLambdaHandler.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
import org.glassfish.jersey.jackson.JacksonFeature;
1313
import org.glassfish.jersey.server.ResourceConfig;
14+
import org.glassfish.jersey.server.ServerProperties;
1415

1516
import java.io.IOException;
1617
import java.io.InputStream;
@@ -19,6 +20,13 @@
1920

2021
public class StreamLambdaHandler implements RequestStreamHandler {
2122
private static final ResourceConfig jerseyApplication = new ResourceConfig()
23+
// properties to speed up Jersey start time
24+
.property(ServerProperties.FEATURE_AUTO_DISCOVERY_DISABLE,true)
25+
.property(ServerProperties.WADL_FEATURE_DISABLE,true)
26+
.property(ServerProperties.METAINF_SERVICES_LOOKUP_DISABLE,true)
27+
.property(ServerProperties.BV_FEATURE_DISABLE,true)
28+
.property(ServerProperties.JSON_PROCESSING_FEATURE_DISABLE,true)
29+
.property(ServerProperties.MOXY_JSON_FEATURE_DISABLE,true)
2230
.packages("com.amazonaws.serverless.sample.jersey")
2331
.register(JacksonFeature.class);
2432
private static final JerseyLambdaContainerHandler<AwsProxyRequest, AwsProxyResponse> handler

0 commit comments

Comments
 (0)