ExamGecko
Home Home / MuleSoft / MCIA - Level 1

MuleSoft MCIA - Level 1 Practice Test - Questions Answers, Page 9

Question list
Search
Search

List of questions

Search

Related questions











An API implementation is being developed to expose data from a production database via HTTPrequests. The API implementation executes a database SELECT statement that is dynamically createdbased upon data received from each incoming HTTP request. The developers are planning to usevarious types of testing to make sure the Mule application works as expected, can handle specificworkloads, and behaves correctly from an API consumer perspective. What type of testing wouldtypically mock the results from each SELECT statement rather than actually execute it in theproduction database?

A.
Unit testing (white box)
A.
Unit testing (white box)
Answers
B.
Integration testing
B.
Integration testing
Answers
C.
Functional testing (black box)
C.
Functional testing (black box)
Answers
D.
Performance testing
D.
Performance testing
Answers
Suggested answer: A

Explanation:

In Unit testing instead of using actual backends, stubs are used for the backend services. This ensures that developers are not blocked and have no dependency on other systems.

In Unit testing instead of using actual backends, stubs are used for the backend services. This ensures that developers are not blocked and have no dependency on other systems.

Below are the typical characteristics of unit testing.

-- Unit tests do not require deployment into any special environment, such as a staging environment

-- Unit tests san be run from within an embedded Mule runtime

-- Unit tests can/should be implemented using MUnit

-- For read-only interactions to any dependencies (such as other APIs): allowed to invoke production endpoints

-- For write interactions: developers must implement mocks using MUnit

-- Require knowledge of the implementation details of the API implementation under test

A travel company wants to publish a well-defined booking service API to be shared with its business partners. These business partners have agreed to ONLY consume SOAP services and they want to get the service contracts in an easily consumable way before they start any development. The travel company will publish the initial design documents to Anypoint Exchange, then share those documents with the business partners. When using an API-led approach, what is the first design document the travel company should deliver to its business partners?

A.
Create a WSDL specification using any XML editor
A.
Create a WSDL specification using any XML editor
Answers
B.
Create a RAML API specification using any text editor
B.
Create a RAML API specification using any text editor
Answers
C.
Create an OAS API specification in Design Center
C.
Create an OAS API specification in Design Center
Answers
D.
Create a SOAP API specification in Design Center
D.
Create a SOAP API specification in Design Center
Answers
Suggested answer: A

Explanation:

SOAP API specifications are provided as WSDL. Design center doesn't provide the functionality to create WSDL file. Hence WSDL needs to be created using XML editor

What is not true about Mule Domain Project?

A.
This allows Mule applications to share resources
A.
This allows Mule applications to share resources
Answers
B.
Expose multiple services within the Mule domain on the same port
B.
Expose multiple services within the Mule domain on the same port
Answers
C.
Only available Anypoint Runtime Fabric
C.
Only available Anypoint Runtime Fabric
Answers
D.
Send events (messages) to other Mule applications using VM queues
D.
Send events (messages) to other Mule applications using VM queues
Answers
Suggested answer: C

Explanation:

* Mule Domain Project is ONLY available for customer-hosted Mule runtimes, but not for Anypoint Runtime Fabric

* Mule domain project is available for Hybrid and Private Cloud (PCE). Rest all provide application isolation and can't support domain project.

What is Mule Domain Project?

* A Mule Domain Project is implemented to configure the resources that are shared among different projects. These resources can be used by all the projects associated with this domain. Mule applications can be associated with only one domain, but a domain can be associated with multiple projects. Shared resources allow multiple development teams to work in parallel using the same set of reusable connectors. Defining these connectors as shared resources at the domain level allows the team to: - Expose multiple services within the domain through the same port. - Share the connection to persistent storage. - Share services between apps through a well-defined interface. - Ensure consistency between apps upon any changes because the configuration is only set in one place.

* Use domains Project to share the same host and port among multiple projects. You can declare the http connector within a domain project and associate the domain project with other projects. Doing this also allows to control thread settings, keystore configurations, time outs for all the requests made within multiple applications. You may think that one can also achieve this by duplicating the http connector configuration across all the applications. But, doing this may pose a nightmare if you have to make a change and redeploy all the applications.

* If you use connector configuration in the domain and let all the applications use the new domain instead of a default domain, you will maintain only one copy of the http connector configuration. Any changes will require only the domain to the redeployed instead of all the applications.

You can start using domains in only three steps:

1) Create a Mule Domain project

2) Create the global connector configurations which needs to be shared across the applications inside the Mule Domain project

3) Modify the value of domain in mule-deploy.properties file of the applications

An API implementation is being designed that must invoke an Order API which is known to repeatedly experience downtime. For this reason a fallback API is to be called when the Order API is unavailable. What approach to designing invocation of the fallback API provides the best resilience?

A.
Redirect client requests through an HTTP 303 temporary redirect status code to the fallback APIwhenever the Order API is unavailable
A.
Redirect client requests through an HTTP 303 temporary redirect status code to the fallback APIwhenever the Order API is unavailable
Answers
B.
Set an option in the HTTP Requester component that invokes the order API to instead invoke afallback API whenever an HTTP 4XX or 5XX response status code is received from Order API
B.
Set an option in the HTTP Requester component that invokes the order API to instead invoke afallback API whenever an HTTP 4XX or 5XX response status code is received from Order API
Answers
C.
Create a separate entry for the order API in API manager and then invoke this API as a fallback API if the primary Order API is unavailable
C.
Create a separate entry for the order API in API manager and then invoke this API as a fallback API if the primary Order API is unavailable
Answers
D.
Search Anypoint Exchange for a suitable existing fallback API and them implement invocations to their fallback API in addition to the Order API
D.
Search Anypoint Exchange for a suitable existing fallback API and them implement invocations to their fallback API in addition to the Order API
Answers
Suggested answer: A

Explanation:

* Resilience testing is a type of software testing that observes how applications act under stress. It's meant to ensure the product's ability to perform in chaotic conditions without a loss of core functions or data; it ensures a quick recovery after unforeseen, uncontrollable events.

* In case an API invocation fails ó even after a certain number of retries ó it might be adequate to invoke a different API as a fallback. A fallback API, by definition, will never be ideal for the purpose of the API client, otherwise it would be the primary API.

* Here are some examples for fallback APIs:

- An old, deprecated version of the same API.

- An alternative endpoint of the same API and version (e.g. API in another CloudHub region).

- An API doing more than required, and therefore not as performant as the primary API.

- An API doing less than required and therefore forcing the API Client to offer a degraded service, which is still better than no service at all.

* API clients implemented as Mule applications offer the 'Until Successful Scope and Exception' strategies at their disposal, which together allow configuring fallback actions such as a fallback API invocation.

* All HTTP response status codes within the 3xx category are considered redirection messages. These codes indicate to the user agent (i.e. your web browser) that an additional action is required in orderto complete the request and access the desired resource

Hence correct answer is Redirect client requests through an HTTP 303 temporary redirect status codeto the fallback API whenever the Order API is unavailable

How are the API implementation , API client, and API consumer combined to invoke and process an API ?

A.
The API consumer creates an API implementation , which receives API invocations from an API such that they are processed for an API client
A.
The API consumer creates an API implementation , which receives API invocations from an API such that they are processed for an API client
Answers
B.
The API consumer creates an API client which sends API invocations to an API such that they are processed by an API implementation
B.
The API consumer creates an API client which sends API invocations to an API such that they are processed by an API implementation
Answers
C.
An API client creates an API consumer, which receives API invocation from an API such that they are processed for an API implementation
C.
An API client creates an API consumer, which receives API invocation from an API such that they are processed for an API implementation
Answers
D.
The API client creates an API consumer which sends API invocations to an API such that they are processed by API implementation
D.
The API client creates an API consumer which sends API invocations to an API such that they are processed by API implementation
Answers
Suggested answer: C

Explanation:

The API consumer creates an API client which sends API invocations to an API such that they are processed by an API implementation This is based on below definitions API client

ï An application component

ï that accesses a service

ï by invoking an API of that service - by definition of the term API over HTTP API consumer

ï A business role, which is often assigned to an individual

ï that develops API clients, i.e., performs the activities necessary for enabling an API client to invoke APIs API implementation

ï An application component

ï that implements the functionality

What Mule application can have API policies applied by Anypoint Platform to the endpoint exposed by that Mule application?

A.
A Mule application that accepts requests over HTTP/1x
A.
A Mule application that accepts requests over HTTP/1x
Answers
B.
A Mule application that accepts JSON requests over TCP but is NOT required to provide a response.
B.
A Mule application that accepts JSON requests over TCP but is NOT required to provide a response.
Answers
C.
A Mule application that accepts JSON requests over WebSocket
C.
A Mule application that accepts JSON requests over WebSocket
Answers
D.
A Mule application that accepts gRPC requests over HTTP/2
D.
A Mule application that accepts gRPC requests over HTTP/2
Answers
Suggested answer: A

Explanation:

* HTTP/1.1 keeps all requests and responses in plain text format.

* HTTP/2 uses the binary framing layer to encapsulate all messages in binary format, while stillmaintaining HTTP semantics, such as verbs, methods, and headers. It came into use in 2015, andoffers several methods to decrease latency, especially when dealing with mobile platforms andserver-intensive graphics and videos

* Currently, Mule application can have API policies only for Mule application that accepts requestsover HTTP/1x

The implementation of a Process API must change. What is a valid approach that minimizes the impact of this change on API clients?

A.
Implement required changes to the Process API implementation so that whenever possible, the Process API's RAML definition remains unchanged
A.
Implement required changes to the Process API implementation so that whenever possible, the Process API's RAML definition remains unchanged
Answers
B.
Update the RAML definition of the current Process API and notify API client developers by sending them links to the updated RAML definition
B.
Update the RAML definition of the current Process API and notify API client developers by sending them links to the updated RAML definition
Answers
C.
Postpone changes until API consumers acknowledge they are ready to migrate to a new Process API or API version
C.
Postpone changes until API consumers acknowledge they are ready to migrate to a new Process API or API version
Answers
D.
Implement the Process API changes in a new API implementation, and have the old API implementation return an HTTP status code 301 - Moved Permanently to inform API clients they should be calling the new API implementation
D.
Implement the Process API changes in a new API implementation, and have the old API implementation return an HTTP status code 301 - Moved Permanently to inform API clients they should be calling the new API implementation
Answers
Suggested answer: A

Explanation:

* Option B shouldn't be used unless extremely needed, if RAML is changed, client needs to accommodate changes. Question is about minimizing impact on Client. So this is not a valid choice.

* Option C isn't valid as Business can't stop for consumers acknowledgment.

* Option D again needs Client to accommodate changes and isn't viable option.

* Best choice is A where RAML definition isn't changed and underlined functionality is changed without any dependency on client and without impacting client.

Organization wants to achieve high availability goal for Mule applications in customer hosted runtime plane. Due to the complexity involved, data cannot be shared among of different instances of same Mule application. What option best suits to this requirement considering high availability is very much critical to the organization?

A.
The cluster can be configured
A.
The cluster can be configured
Answers
B.
Use third party product to implement load balancer
B.
Use third party product to implement load balancer
Answers
C.
High availability can be achieved only in CloudHub
C.
High availability can be achieved only in CloudHub
Answers
D.
Use persistent object store
D.
Use persistent object store
Answers
Suggested answer: B

Explanation:

High availability is about up-time of your application

A) High availability can be achieved only in CloudHub isn't correct statement. It can be achieved in customer hosted runtime planes as well

B) An object store is a facility for storing objects in or across Mule applications. Mule runtime engine

(Mule) uses object stores to persist data for eventual retrieval. It can be used for disaster recovery but not for High Availability. Using object store can't guarantee that all instances won't go down at once. So not an appropriate choice.

Reference: https://docs.mulesoft.com/mule-runtime/4.3/mule-object-stores

C) High availability can be achieved by below two models for on-premise MuleSoft implementations.

1) Mule Clustering ñ Where multiple Mule servers are available within the same cluster environment and the routing of requests will be done by the load balancer. A cluster is a set of up to eight servers that act as a single deployment target and high-availability processing unit. Application instances in a cluster are aware of each other, share common information, and synchronize statuses.

If one server fails, another server takes over processing applications. A cluster can run multiple applications. ( refer left half of the diagram) In given scenario, it's mentioned that 'data cannot be shared among of different instances'. So this is not a correct choice.

Reference: https://docs.mulesoft.com/runtime-manager/cluster-about

2) Load balanced standalone Mule instances ñ The high availability can be achieved even without cluster, with the usage of third party load balancer pointing requests to different Mule servers. This approach does not share or synchronize data between Mule runtimes. Also high availability achieved as load balanced algorithms can be implemented using external load balancer. ( refer right half of the diagram)

An organization needs to enable access to their customer data from both a mobile app and a web application, which each need access to common fields as well as certain unique fields. The data is available partially in a database and partially in a 3rd-party CRM system. What APIs should be created to best fit these design requirements?

A.
A Process API that contains the data required by both the web and mobile apps, allowing these applications to invoke it directly and access the data they need thereby providing the flexibility to add more fields in the future without needing API changes.
A.
A Process API that contains the data required by both the web and mobile apps, allowing these applications to invoke it directly and access the data they need thereby providing the flexibility to add more fields in the future without needing API changes.
Answers
B.
One set of APIs (Experience API, Process API, and System API) for the web app, and another set for the mobile app.
B.
One set of APIs (Experience API, Process API, and System API) for the web app, and another set for the mobile app.
Answers
C.
Separate Experience APIs for the mobile and web app, but a common Process API that invokes separate System APIs created for the database and CRM system
C.
Separate Experience APIs for the mobile and web app, but a common Process API that invokes separate System APIs created for the database and CRM system
Answers
D.
A common Experience API used by both the web and mobile apps, but separate Process APIs for the web and mobile apps that interact with the database and the CRM System.
D.
A common Experience API used by both the web and mobile apps, but separate Process APIs for the web and mobile apps that interact with the database and the CRM System.
Answers
Suggested answer: C

Explanation:

Lets analyze the situation in regards to the different options available Option : A common Experience API but separate Process APIs Analysis : This solution will not work because having common experience layer will not help the purpose as mobile and web applications will have different set of requirements which cannot be fulfilled by single experience layer API Option : Common Process API Analysis : This solution will not work because creating a common process API will impose limitations in terms of flexibility to customize API;s as per the requirements of different applications. It is not a recommended approach.

Option : Separate set of API's for both the applications Analysis : This goes against the principle of Anypoint API-led connectivity approach which promotes creating reusable assets. This solution may work but this is not efficient solution and creates duplicity of code.

Hence the correct answer is: Separate Experience APIs for the mobile and web app, but a common Process API that invokes separate System APIs created for the database and CRM system

Lets analyze the situation in regards to the different options available Option : A common Experience API but separate Process APIs Analysis : This solution will not work because having common experience layer will not help the purpose as mobile and web applications will have different set of requirements which cannot be fulfilled by single experience layer API Option : Common Process API Analysis : This solution will not work because creating a common process API will impose limitations in terms of flexibility to customize API;s as per the requirements of different applications. It is not a recommended approach.

Option : Separate set of API's for both the applications Analysis : This goes against the principle of Anypoint API-led connectivity approach which promotes creating reusable assets. This solution may work but this is not efficient solution and creates duplicity of code.

Hence the correct answer is: Separate Experience APIs for the mobile and web app, but a common Process API that invokes separate System APIs created for the database and CRM system

What is true about automating interactions with Anypoint Platform using tools such as Anypoint Platform REST API's, Anypoint CLI or the Mule Maven plugin?

A.
By default, the Anypoint CLI and Mule Maven plugin are not included in the Mule runtime
A.
By default, the Anypoint CLI and Mule Maven plugin are not included in the Mule runtime
Answers
B.
Access to Anypoint Platform API;s and Anypoint CLI can be controlled separately thruough the roles and permissions in Anypoint platform, so that specific users can get access to Anypoint CLI while others get access to the platformAPI's
B.
Access to Anypoint Platform API;s and Anypoint CLI can be controlled separately thruough the roles and permissions in Anypoint platform, so that specific users can get access to Anypoint CLI while others get access to the platformAPI's
Answers
C.
Anypoint Platform API's can only automate interactions with CloudHub while the Mule maven plugin is required for deployment to customer hosted Mule runtimes
C.
Anypoint Platform API's can only automate interactions with CloudHub while the Mule maven plugin is required for deployment to customer hosted Mule runtimes
Answers
D.
API policies can be applied to the Anypoint platform API's so that only certain LOS's has access to specific functions
D.
API policies can be applied to the Anypoint platform API's so that only certain LOS's has access to specific functions
Answers
Suggested answer: A

Explanation:

Correct answer is By default, the Anypoint CLI and Mule Maven plugin are not included in the Mule runtime Maven is not part of runtime though it is part of studio. You do not need it to deploy in order to deploy your app. Same is the case with CLI.

Total 244 questions
Go to page: of 25