Welcome!

Related Topics: IBM Cloud, Java IoT, Containers Expo Blog, @CloudExpo

IBM Cloud: Blog Feed Post

A Practical Guide to Java Remote Debugging | @CloudExpo #JVM #Java #Cloud

How to configure a running web server and debug your application using standard facilities provided by the Java platform

A Practical Guide to Java Remote Debugging
By Eugen Paraschiv

Introduction to Debugging
Troubleshooting a problem on a remote server, especially in production, is not an easy task. Sometimes it involves debugging the application code directly on the server.

But the production servers are usually run in a strict environment, where not all convenient developer tools are available.

In this article, you'll discover how to configure a running web server and debug your application using standard facilities provided by the Java platform.

Caveats
First off, if you try to connect to a remote running Java server which you did not specifically configure for debugging, you'd most likely fail. This means that the configuration steps should be taken in advance.

On the other hand, you wouldn't want to always keep the production server running with debugging configuration enabled, as it could affect the performance, and definitely weaken security.

The debugging mode slows down the server since it disables some JVM optimizations that otherwise provide the significant performance boost.

Also, the debugging mode can be a potential security risk. You need to provide the debugger with the access to the server via a specific port which would be another potential security hole for bad actors.

Java Configuration for Remote Debugging
Java Platform Debugging Architecture
(JPDA) is an extensible set of APIs, part of which is a special debugging protocol called JDWP (Java Debug Wire Protocol).

JDWP is a protocol for communication between the application and the debugger processes, which can be used to troubleshoot a running Java application remotely.

To configure the remote application for debugging, you have to enable the debug mode and specify the parameters for this protocol.

Enabling the Debug Mode
To run a regular serverless Java class Test with debugging enabled in the Oracle HotSpot JVM, you need to use the following command:

java -Xdebug -Xrunjdwp:transport=dt_socket, address=8000,server=y,suspend=y Test

As you can see, you basically need only two JVM options: -Xdebug and -Xrunjdwp. Note that these are X-arguments, which means that they are not standardized and may not work as expected in other JVM implementations.

The -Xdebug argument enables the debugging itself, and the -Xrunjdwp argument configures the JDWP protocol with several important parameters.

Transport for Debugging
The transport parameter of the -Xrunjdwp argument defines the means of interaction between the application and the debugger.
It has two values available out-of-the-box: dt_socket (using a socket interface) and dt_shmem (using shared memory).

The dt_shmem value means that the debugger and the application will interact via a shared memory region. Thus, it can only be used when running the debugger and the application on the same machine.

Since you're intending to debug a remote server, this won't help you much, so the shared memory mode won't be discussed here.

And, thanks to the extensibility of JPDA, you can also write your own transport implementation, if these two do not suit your needs.

Connectors
Another abstraction of JPDA is the connector. The connector defines exactly how the debugger connects to the remote virtual machine. As you can imagine, connectors depend on the transport you choose, but they offer many other interesting features.

For example, usually, you'd want to connect to an existing process that waits for the debugger. But sometimes it could be useful to invert the client-server relation.

You can configure a connector to keep the debugger running as a server and wait for the connection from the debugged machine, which would in this case act as a client.

Other connectors allow you to "connect" to a core dump of a crashed application or launch the debugged VM from the command line. Again, you can write your own connector for any special case. But we won't discuss these advanced scenarios here.

In this simple example, you just use a Socket Attaching Connector, which is enabled by default when the dt_socket transport is configured and the VM is running in the server debugging mode.

Other Parameters of the Debugging Mode
The server parameter of the -Xrunjdwp argument specifies that this VM will act as a server for the debugging, and the debugger itself would have to connect to it as a client.

The suspend parameter of the -Xrunjdwp argument specifies whether you want to suspend the debugged JVM until the debugger attaches to it.

By default, the suspend parameter has the value "y", which means that the virtual machine would be suspended before it had the opportunity to load the main class, and the attached debugger would resume the execution of the VM.

Since you usually need the web server to boot properly before you can debug your application, you should set the suspend parameter to "n". However, if you need to debug some initialization code of the application, then you should keep the value of this parameter to "y".

You also have to specify the address parameter to set the TCP port on which your debugged application would be listening for a debugger. Once a debugger attaches to this port, debugging starts. In your case, this port is 8000, but you can set it to any other value you like.

Server Setup
To check out how remote debugging works, you can use the Apache Tomcat 8 web server. Any other web or enterprise Java server can be set up for debugging with the same parameters, although they may be configured in different ways.

For Tomcat, the catalina script already contains all the default debugging configuration values that were discussed in the previous chapter, as described in the Tomcat wiki. To enable them, run the script with the jpda argument:

catalina jpda start

The specific parameters of the JDWP protocol are controlled with the following environment variables:

  • JPDA_TRANSPORT - the transport mode
  • JPDA_ADDRESS - the port for the debugging server
  • JPDA_SUSPEND - the suspend value ("n" by default)
  • JPDA_OPTS - completely replaces all of the above with a custom string

Deploying Sample Project
To demonstrate the debugging, you'll create a simple Spring Boot application with a REST endpoint. You'll need to specify packaging as a war file to be able to deploy it to the server. Also, the spring-boot-starter-tomcat dependency should be specified with the provided scope:

<packaging>war</packaging>

<dependencies>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

</dependencies>

Let's also specify the name of the resulting war file and a Maven plugin to build it:

<build>
<finalName>remote-debugging</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

A simple hello world controller will provide a web service endpoint - with a single parameter:

import org.springframework.web.bind.annotation.*;

@RestController("/hello")
public class HelloController {

@GetMapping
public String hello(@RequestParam("name") String name) {
String message = "Hello, " + name;
return message;
}
}

Here's how you build the application:

mvn clean package

And then simply copy the resulting file target/remote-debugging.war to the tomcat/webapps directory. When deployed to your server as a war file, this application can be accessed by the following URL: http://localhost:8080/remote-debugging/hello?name=John

If all went well, you now have a debuggable server with the deployed, running web service.

Using jdb to Debug the Application
Popular Java IDEs also have very convenient debugging facilities. But sometimes you don't have an IDE readily available, especially if you need to debug a production server which is not usually directly accessible from the development environment.

In this case, a simple but powerful console utility can save the day.

Attaching the jdb
Let's attach the standard Java debugging utility jdb to the running process of the server:

$ jdb -attach localhost:8000 -sourcepath ~/dev/remote/src/main/java/
Set uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
Initializing jdb ...
>

The utility is attached and ready to receive your commands.

The sourcepath argument allows you to provide the colon-separated list of paths to look for the sources. You can provide not only the sources of your application but also the sources of the libraries you use, to be able to easily follow their source code during the debugging session.

In this example, you run the application locally. But since you're using sockets as the transport for the debugging, instead of localhost, you could specify any other host, and nothing particular would change.

Adding Breakpoints
Now let's put a breakpoint at the start of your HelloController.hello() method:

> stop in com.stackify.debug.rest.HelloController.hello (java.lang.String)
Set breakpoint com.stackify.debug.rest.HelloController.hello (java.lang.String)

Note that you have to specify both the fully qualified name of the class and fully qualified names of the arguments of the method.

You could also see the following error instead of the successful "set breakpoint" message:

> stop in some.non.existing.Class.method()
Deferring breakpoint some.non.existing.Class.method().
It will be set after the class is loaded.

Basically what jdb says here is that it does not know anything about the provided class, because some of the application classes may be lazily loaded later on demand. But in most cases, this probably means that you've misspelled the name of the class.

If you've successfully set the breakpoint, then you can go to the browser and hit the service once again:

http://localhost:8080/remote-debugging/hello?name=John

The page load will stall. Switch to the jdb console, and you'll see something like:

Breakpoint hit: "thread=http-nio-8080-exec-10", \
com.stackify.debug.rest.HelloController.hello(), line=12 bci=0
12 String message = "Hello, " + name;
http-nio-8080-exec-10[1]

First of all, you see that the breakpoint occurred in the http-nio-8080-exec-10 thread. This is one of the threads from the pool used by Tomcat to handle the incoming HTTP requests on the 8080 port. You also see that there's probably at least 10 of these threads.

Then you can see the name of the class, the method name and the line number where the debugger has stopped the program.

The bci, or the bytecode index, specifies the number of the bytecode instruction you're currently at. This may be important because every line of code in the Java source usually corresponds to multiple bytecode instructions.

Finally, thanks to the attached sources, you can see the contents of the source code line on which the break occurred.

Exploring the Code
To check out the code around the current line, you can make use of the list command:

http-nio-8080-exec-10[1] list
8 public class HelloController {
9
10 @GetMapping
11 public String hello(@RequestParam("name") String name) {
12 => String message = "Hello, " + name;
13 return message;
14 }
15
16 }

Now you can see the code of the controller and the exact place you're at, denoted by the arrow.

To check out all methods in a class, you can use the corresponding command. Note that <init>() represents the constructor, for which you can also set the breakpoint:

http-nio-8080-exec-10[1] methods com.stackify.debug.rest.HelloController
** methods list **
com.stackify.debug.rest.HelloController <init>()
com.stackify.debug.rest.HelloController hello(java.lang.String)
java.lang.Object registerNatives()
java.lang.Object <init>()
...

The classes command lets you explore the available loaded classes, but the number of them in a Spring-based web application would be pretty large and not very easy to navigate.

Exploring the Data at Breakpoint
Let's check out what is accessible to us at this point. You can easily see all local variables and method arguments in the current scope with the locals command:

http-nio-8080-exec-10[1] locals
Method arguments:
name = "john"
Local variables:

You're in the hello() method, so the name argument is in the scope. Let's see what's inside:

http-nio-8080-exec-10[1] print name
name = "John"

The print command is pretty useful, as it is the evaluation tool that has been around long before the jshell utility appeared in Java 9. The print command can be used to output anything that is accessible in the current scope.

The print can also evaluate some Java expressions; for instance:

http-nio-8080-exec-10[1] print name.length()
name.length() = 4

http-nio-8080-exec-10[1] print 1 + 2 + java.lang.Math.sqrt(3)
1 + 2 + java.lang.Math.sqrt(3) = 4.732050807568877

The where command shows the current stack trace and allows you to see where you're at:

http-nio-8080-exec-10[1] where
[1] com.stackify.debug.rest.HelloController.hello (HelloController.java:12)
[2] jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (native method)
[3] jdk.internal.reflect.NativeMethodAccessorImpl.invoke \
(NativeMethodAccessorImpl.java:62)
[4] jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke \
(DelegatingMethodAccessorImpl.java:43)
...

Navigating the Code
Currently, you're at line 12 in the original file, which is the following:

String message = "Hello, " + name;

To step to the next instruction, you can use the step command:

http-nio-8080-exec-10[1] step
>
Step completed: "thread=http-nio-8080-exec-13", \
com.stackify.debug.rest.HelloController.hello(), line=13 bci=20
13 return message;

http-nio-8080-exec-10[1]

Now the message variable is defined, and you can inspect it:

http-nio-8080-exec-10[1] print message
message = "Hello, John"

You can also use the step up command to run the code to the end of the current method, exit it and stop at the next line of the calling method:

http-nio-8080-exec-10[1] step up
>
Step completed: "thread=http-nio-8080-exec-1", \
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(), line=62 bci=103

http-nio-8080-exec-10[1]

Modifying the Data
Now let's change the message variable with the set command:

http-nio-8080-exec-10[1] set message = "Goodbye, John"
message = "Goodbye, John" = "Goodbye, John"
http-nio-8080-exec-10[1]

To continue execution, use the cont or the run command:

http-nio-8080-exec-10[1] cont

After that, the page in the browser will be loaded successfully, but the message will be different.

Clearing the Breakpoints
Let's remove the breakpoint. To see the list of available breakpoints, let's enter the clear command:

> clear
Breakpoints set:
breakpoint com.stackify.debug.rest.HelloController.hello (java.lang.String)

Now call it to clear the breakpoint:

> clear com.stackify.debug.rest.HelloController.hello (java.lang.String)
Removed: breakpoint com.stackify.debug.rest.HelloController.hello (java.lang.String)

Remote Debugging Using the IDE
The jdb utility is definitely very powerful, but if you have the option, debugging in your favorite IDE is clearly easier.

The debug configuration is pretty easy to set up in any Java IDE. Here's how it's done in IntelliJ IDEA.

First, choose Run -> Edit Configurations... in the main menu or select the run configurations drop-down in the top panel:

Click on the "+" button in the top-left corner of the configuration window and select the Remote configuration template:

The default configuration is mostly good, you just have to provide a meaningful name and change the port to 8000, as in the example:

Now start the created debug configuration and put a breakpoint on a line of code. You should see a tick inside the red bubble, which means that the debugger is attached and ready to intercept:

Now open the page in the web browser, and the debugger should stop at the breakpoint. You'll immediately see the stack trace and the values in scope:

Conclusion
In this article, you've discovered how to configure a Java server for remote debugging, and how to use a simple console tool to debug your application.

The source code for the article is available over on GitHub.

The post A Practical Guide to Java Remote Debugging appeared first on Stackify.

CloudExpo | DXWorldEXPO have announced the conference tracks for Cloud Expo 2018, introducing DXWorldEXPO.

DXWordEXPO, colocated with Cloud Expo will be held June 5-7, 2018, at the Javits Center in New York City, and November 6-8, 2018, at the Santa Clara Convention Center, Santa Clara, CA.

Digital Transformation (DX) is a major focus with the introduction of DXWorld Expo within the program. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term.

A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throughout enterprises of all sizes.

Cloud Expo | DXWorldEXPO 2018 New York
(June 5-7, 2018, Javits Center, Manhattan)

Cloud Expo | DXWorldEXPO 2018 Silicon Valley
(November 6-8, 2018, Santa Clara Convention Center, CA)

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

DX World EXPO, LLC., a Lighthouse Point, Florida-based startup trade show producer and the creator of DXWorldEXPO® - Digital Transformation Conference & Expo has announced its conference agenda, with three major themes:

* Technology - The Revolution Continues
* Economy - The 21st Century Emerges
* Society - The Big Issues

"DX encompasses the continuing technology revolution, and is addressing society's most important issues throughout the entire $78 trillion 21st-century global economy," said Roger Strukhoff, Conference Chair. "DXWorldExpo has organized these issues along 10 tracks with more than 500 of the world's top speakers coming to Istanbul to help change the world."

There are 10 tracks running throughout the event and following the major themes. More than 500 breakout sessions will be featured, along with keynotes and general sessions from some of the world's top technology, business, and societal leaders. The event will be held over five days in Istanbul, reflecting the global nature of Digital Transformation and the city's long and historic role as a key business and intellectual center and linchpin between East and West.

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

DX World Expo's Global Themes and Tracks are as follows:

Technology - The Revolution Continues

DX Tech: Data-Driven Global 2000
DX Tech: The Blockchain Challenge
DX Tech: AI and Cognitive
DX Tech: The Global Cloud

Economy - The 21st Century Emerges

DX Econ: Software is Rewriting the World
DX Econ: Smart Cities, Nations, and Regions
DX Econ: FinTech and the Token Economy
DX Econ: The Industrial Internet and Industrie 4.0

Society - The Big Issues

DX Society: Environment
DX Society: Education
DX Society: Agriculture
DX Society: Health Care

Call for Papers -speaking opportunities- as well as sponsorship and exhibit opportunities will open on November 1, 2017.

World's Most Important Tech Event
DXWorldEXPO® will be the world's most important tech event with 1,000 exhibitors in its first year and 2,000 exhibitors in its second year, as it guides Global 2000 companies through their Digital Transformation journey for the next two decades. The global event is set to launch September 17-20, 2018 in Istanbul. It will be sponsored by Fortune 50 companies, and more than 30 international banks will be among sponsors of its FinTech/InsurTech track.

Gaining a better understanding of customers and acting upon this information is the foundation of Digital Transformation (DX) in the enterprise. Applying the latest technologies in this area is the key to driving new topline revenue opportunities.

Global 2000 companies have more than US$40 trillion in annual revenue - more than 50% of the world's entire GDP. The Global 2000 spends a total of US$2.4 trillion annually on enterprise IT. The average Global 2000 company has US$11 billion in annual revenue. The average Global 2000 company spends more than $600 million annually on enterprise IT.

Governments throughout the world spend another US$500 billion on IT - much of it dedicated to new Smart City initiatives. There are more than a dozen Global 2000 companies in Turkey, including Isbank, Garanti Bank, other financial institutions, Turk Telecom, Turkcell, Turkish Airlines, and ENKA.

Cloud Expo | DXWorldEXPO 2018 New York
(June 5-7, 2018, Javits Center, Manhattan)

Cloud Expo | DXWorldEXPO 2018 Silicon Valley
(November 6-8, 2018, Santa Clara Convention Center, CA)

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

More Management Quotes
"For the past 10 years at Cloud Expo, we've helped drive the migration to modern enterprise IT infrastructures, built upon the foundation of cloud computing. Today's hybrid, multiple cloud IT infrastructures integrate Big Data, analytics, blockchain, the IoT, mobile devices, and the latest in cryptography and enterprise-grade security," said Fuat Kircaali, Chairman and founder of DX World Expo, LLC.

"As a report from the World Economic Forum and Accenture recently stated, 'Companies need to fundamentally change the way they identify, develop and launch new business ventures.' We agree," said Carmen Gonzalez, president of DX World Expo, LLC.

"Digital Transformation is the key issue driving the global enterprise IT business," said Roger Strukhoff, Conference Chair and Executive Director of the Tau Institute for Global ICT Studies. "DX is most prominent among Global 2000 enterprises and government institutions. Our new event in Istanbul brings together the top companies and delegates from around the world, who are transforming the world."

2018 Conference Agenda and Tracks, June 5-7, Javits Center

Track 1 | Cloud Expo - Enterprise Cloud
Track 2 | DXWorld Expo - Digital Transformation (DX)
Track 3 | The API Enterprise | Mobility & Security
Track 4 | DevOps | Containers & Microservices
Track 5 | Cognitive Computing | AI, ML, DL
Track 6 | Big Data | Analytics
Track 7 | IoT | IIoT | Smart Cities
Track 8 | Hot Topics | FinTech | WebRTC

Cloud Expo covers all of these tools, with the most comprehensive program and more than 120 top world-class speakers throughout our Industry presenting Keynotes, General Sessions, Breakout Sessions along eight focused tracks, as well as our signature Power Panels. Our expo floor brings together the world's leading companies throughout the world of Cloud Computing, DX, and all they entail.

As your enterprise creates a vision and strategy that enables you to create your own unique, long-term success, learning about all the technologies involved is essential. Companies today not only form multi-cloud and hybrid cloud architectures, but create them with built-in cognitive capabilities. Cloud-native thinking is now the norm in financial services, manufacturing, telco, healthcare, transportation, energy, media, entertainment, retail and other consumer industries, as well as the public sector.

Cloud Expo is the world's most important, independent event where technology buyers and vendors meet to experience and discuss the big picture of Digital Tranformation and all of the strategies, tactics, and tools they need to realize their goals.

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

Only Cloud Expo brings together all this in a single location:

  • Cloud Computing
  • Big Data & Analytics
  • Software-Defined Infrastructure
  • Industrial IoT
  • Industry 4.0
  • Artificial Intelligence
  • Cognitive Computing
  • Microservices
  • Machine Learning
  • DevOps
  • WebRTC
  • FinTech
  • Digital Transformation

Attend Cloud Expo. Build your own custom experience. Learn about the world's latest technologies and chart your course to Digital Transformation.

21st International Cloud Expo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, will feature technical sessions from a rock star conference faculty and the leading industry players in the world.

Download Show Prospectus ▸ Here

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Meanwhile, 94% of enterprises are using some form of XaaS - software, platform, and infrastructure as a service.

With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend 21st Cloud Expo, October 31 - November 2, 2017, at the Santa Clara Convention Center, CA, and June 12-14, 2018, at the Javits Center in New York City, NY, and learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.

2018 Conference Agenda and Tracks, June 5-7, Javits Center

Track 1 | Cloud Expo - Enterprise Cloud
Track 2 | DXWorld Expo - Digital Transformation (DX)
Track 3 | The API Enterprise | Mobility & Security
Track 4 | DevOps | Containers & Microservices
Track 5 | Cognitive Computing | AI, ML, DL
Track 6 | Big Data | Analytics
Track 7 | IoT | IIoT | Smart Cities
Track 8 | Hot Topics | FinTech | WebRTC

Cloud Expo | DXWorldEXPO 2018 New York
(June 5-7, 2018, Javits Center, Manhattan)

Cloud Expo | DXWorldEXPO 2018 Silicon Valley
(November 6-8, 2018, Santa Clara Convention Center, CA)

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

Download Show ProspectusHere

Every Global 2000 enterprise in the world is now integrating cloud computing in some form into its IT development and operations. Midsize and small businesses are also migrating to the cloud in increasing numbers.

Companies are each developing their unique mix of cloud technologies and services, forming multi-cloud and hybrid cloud architectures and deployments across all major industries. Cloud-driven thinking has become the norm in financial services, manufacturing, telco, healthcare, transportation, energy, media, entertainment, retail and other consumer industries, and the public sector.

Cloud Expo is the single show where technology buyers and vendors can meet to experience and discus cloud computing and all that it entails. Sponsors of Cloud Expo will benefit from unmatched branding, profile building and lead generation opportunities through:

  • Featured on-site presentation and ongoing on-demand webcast exposure to a captive audience of industry decision-makers.
  • Showcase exhibition during our new extended dedicated expo hours
  • Breakout Session Priority scheduling for Sponsors that have been guaranteed a 35-minute technical session
  • Online advertising in SYS-CON's i-Technology Publications
  • Capitalize on our Comprehensive Marketing efforts leading up to the show with print mailings, e-newsletters and extensive online media coverage.
  • Unprecedented PR Coverage: Editorial Coverage on Cloud Computing Journal.
  • Tweetup to over 75,000 plus followers
  • Press releases sent on major wire services to over 500 industry analysts.

For more information on sponsorship, exhibit, and keynote opportunities, contact Carmen Gonzalez by email at events (at) sys-con.com, or by phone 201 802-3021.

The World's Largest "Cloud Digital Transformation" Event

@CloudExpo | @ThingsExpo 2017 Silicon Valley
(Oct. 31 - Nov. 2, 2017, Santa Clara Convention Center, CA)

@CloudExpo | @ThingsExpo 2018 New York
(June 12-14, 2018, Javits Center, Manhattan)

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

Sponsorship Opportunities

Sponsors of Cloud Expo | @ThingsExpo will benefit from unmatched branding, profile building and lead generation opportunities through:

  • Featured on-site presentation and ongoing on-demand webcast exposure to a captive audience of industry decision-makers
  • Showcase exhibition during our new extended dedicated expo hours
  • Breakout Session Priority scheduling for Sponsors that have been guaranteed a 35 minute technical session
  • Online targeted advertising in SYS-CON's i-Technology Publications
  • Capitalize on our Comprehensive Marketing efforts leading up to the show with print mailings, e-newsletters and extensive online media coverage
  • Unprecedented Marketing Coverage: Editorial Coverage on ITweetup to over 100,000 plus followers, press releases sent on major wire services to over 500 industry analysts

For more information on sponsorship, exhibit, and keynote opportunities, contact Carmen Gonzalez (@GonzalezCarmen) today by email at events (at) sys-con.com, or by phone 201 802-3021.

Secrets of Sponsors and ExhibitorsHere
Secrets of Cloud Expo SpeakersHere

All major researchers estimate there will be tens of billions devices - computers, smartphones, tablets, and sensors - connected to the Internet by 2020. This number will continue to grow at a rapid pace for the next several decades.

With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend @CloudExpo | @ThingsExpo, October 31 - November 2, 2017, at the Santa Clara Convention Center, CA, and June 12-4, 2018, at the Javits Center in New York City, NY, and learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.

Delegates to Cloud Expo | @ThingsExpo will be able to attend 8 simultaneous, information-packed education tracks.

There are over 120 breakout sessions in all, with Keynotes, General Sessions, and Power Panels adding to three days of incredibly rich presentations and content.

Join Cloud Expo | @ThingsExpo conference chair Roger Strukhoff (@IoT2040), October 31 - November 2, 2017, Santa Clara Convention Center, CA, and June 12-14, 2018, at the Javits Center in New York City, NY, for three days of intense Enterprise Cloud and 'Digital Transformation' discussion and focus, including Big Data's indispensable role in IoT, Smart Grids and (IIoT) Industrial Internet of Things, Wearables and Consumer IoT, as well as (new) Digital Transformation in Vertical Markets.

Full Conference Registration "Gold Pass" and Exhibit HallHere (Register ▸ Here via EventBrite)

Financial Technology - or FinTech - Is Now Part of the @CloudExpo Program!

Accordingly, attendees at the upcoming 21st Cloud Expo | @ThingsExpo October 31 - November 2, 2017, Santa Clara Convention Center, CA, and June 12-14, 2018, at the Javits Center in New York City, NY, will find fresh new content in a new track called FinTech, which will incorporate machine learning, artificial intelligence, deep learning, and blockchain into one track.

Financial enterprises in New York City, London, Singapore, and other world financial capitals are embracing a new generation of smart, automated FinTech that eliminates many cumbersome, slow, and expensive intermediate processes from their businesses.

FinTech brings efficiency as well as the ability to deliver new services and a much improved customer experience throughout the global financial services industry. FinTech is a natural fit with cloud computing, as new services are quickly developed, deployed, and scaled on public, private, and hybrid clouds.

More than US$20 billion in venture capital is being invested in FinTech this year. @CloudExpo is pleased to bring you the latest FinTech developments as an integral part of our program, starting at the 21st International Cloud Expo October 31 - November 2, 2017 in Silicon Valley, and June 12-14, 2018, in New York City.

@CloudExpo is accepting submissions for this new track, so please visit www.CloudComputingExpo.com for the latest information.

Speaking Opportunities

The upcoming 21st International @CloudExpo | @ThingsExpo, October 31 - November 2, 2017, Santa Clara Convention Center, CA, and June 12-14, 2018, at the Javits Center in New York City, NY announces that its Call For Papers for speaking opportunities is open.

Submit your speaking proposal today! ▸ Here

About @CloudEXPO and @DXWorldEXPO
SYS-CON Media (www.sys-con.com) has since 1994 been connecting technology companies and customers through a comprehensive content stream - featuring over forty focused subject areas, from Cloud Computing to Web Security - interwoven with market-leading full-scale conferences. The company's internationally recognized brands include among others Cloud Expo® (@CloudExpo), Big Data Expo® (@BigDataExpo), DevOps Summit (@DevOpsSummit), @ThingsExpo® (@ThingsExpo), and DXWorldEXPO® (@ExpoDX).

@CloudExpo® and @ThingsExpo® are registered trademarks of CLOUD EXPO INC.

DXWorldEXPO® is a registered trademark of DX WORLD EXPO LLC.

Read the original blog entry...

More Stories By Stackify Blog

Stackify offers the only developers-friendly solution that fully integrates error and log management with application performance monitoring and management. Allowing you to easily isolate issues, identify what needs to be fixed quicker and focus your efforts – Support less, Code more. Stackify provides software developers, operations and support managers with an innovative cloud based solution that gives them DevOps insight and allows them to monitor, detect and resolve application issues before they affect the business to ensure a better end user experience. Start your free trial now stackify.com

Latest Stories
"ZeroStack is a startup in Silicon Valley. We're solving a very interesting problem around bringing public cloud convenience with private cloud control for enterprises and mid-size companies," explained Kamesh Pemmaraju, VP of Product Management at ZeroStack, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
"Codigm is based on the cloud and we are here to explore marketing opportunities in America. Our mission is to make an ecosystem of the SW environment that anyone can understand, learn, teach, and develop the SW on the cloud," explained Sung Tae Ryu, CEO of Codigm, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
High-velocity engineering teams are applying not only continuous delivery processes, but also lessons in experimentation from established leaders like Amazon, Netflix, and Facebook. These companies have made experimentation a foundation for their release processes, allowing them to try out major feature releases and redesigns within smaller groups before making them broadly available. In his session at 21st Cloud Expo, Brian Lucas, Senior Staff Engineer at Optimizely, discussed how by using ne...
"CA has been doing a lot of things in the area of DevOps. Now we have a complete set of tool sets in order to enable customers to go all the way from planning to development to testing down to release into the operations," explained Aruna Ravichandran, Vice President of Global Marketing and Strategy at CA Technologies, in this SYS-CON.tv interview at DevOps Summit at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"There's plenty of bandwidth out there but it's never in the right place. So what Cedexis does is uses data to work out the best pathways to get data from the origin to the person who wants to get it," explained Simon Jones, Evangelist and Head of Marketing at Cedexis, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"Cloud Academy is an enterprise training platform for the cloud, specifically public clouds. We offer guided learning experiences on AWS, Azure, Google Cloud and all the surrounding methodologies and technologies that you need to know and your teams need to know in order to leverage the full benefits of the cloud," explained Alex Brower, VP of Marketing at Cloud Academy, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clar...
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
Gemini is Yahoo’s native and search advertising platform. To ensure the quality of a complex distributed system that spans multiple products and components and across various desktop websites and mobile app and web experiences – both Yahoo owned and operated and third-party syndication (supply), with complex interaction with more than a billion users and numerous advertisers globally (demand) – it becomes imperative to automate a set of end-to-end tests 24x7 to detect bugs and regression. In th...
Enterprises are moving to the cloud faster than most of us in security expected. CIOs are going from 0 to 100 in cloud adoption and leaving security teams in the dust. Once cloud is part of an enterprise stack, it’s unclear who has responsibility for the protection of applications, services, and data. When cloud breaches occur, whether active compromise or a publicly accessible database, the blame must fall on both service providers and users. In his session at 21st Cloud Expo, Ben Johnson, C...
"Infoblox does DNS, DHCP and IP address management for not only enterprise networks but cloud networks as well. Customers are looking for a single platform that can extend not only in their private enterprise environment but private cloud, public cloud, tracking all the IP space and everything that is going on in that environment," explained Steve Salo, Principal Systems Engineer at Infoblox, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventio...
Data scientists must access high-performance computing resources across a wide-area network. To achieve cloud-based HPC visualization, researchers must transfer datasets and visualization results efficiently. HPC clusters now compute GPU-accelerated visualization in the cloud cluster. To efficiently display results remotely, a high-performance, low-latency protocol transfers the display from the cluster to a remote desktop. Further, tools to easily mount remote datasets and efficiently transfer...
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"MobiDev is a software development company and we do complex, custom software development for everybody from entrepreneurs to large enterprises," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Agile has finally jumped the technology shark, expanding outside the software world. Enterprises are now increasingly adopting Agile practices across their organizations in order to successfully navigate the disruptive waters that threaten to drown them. In our quest for establishing change as a core competency in our organizations, this business-centric notion of Agile is an essential component of Agile Digital Transformation. In the years since the publication of the Agile Manifesto, the conn...