The Internet of Things (IoT) can support a significant number of services including those in smart homes and the automation of industries and public utilities. However, the growth of these deployments has posed a significant challenge especially in terms of how to build such deployments in a highly resilient manner. The IoT devices are prone to unpredicted failures and cyber-attacks, i.e. various types of damage, unreliable wireless connections, limited transmission power, computing ability, and storage space. Thus resilience is essential in IoT networks and in the services they support. In this paper, we introduce a new approach to resilience in IoT service embedding, based on traffic splitting. Our study assesses the power consumption associated with the services embedded and the data delivery time. The results are compared to recent approaches in resilience including redundancy and replication approaches. We constructed an optimization model whose goal is to determine the optimum physical resources to be used to embed the IoT virtual topology, where the latter is derived from a business process (BP). The embedding process makes use of the service-oriented architecture (SOA) paradigm. The physical resources of interest include IoT links and devices. The model made use of mixed integer linear programming (MILP) with an objective function that aimed to minimize both the total power consumption and the traffic latency. The optimization results show that the power consumption is reduced and the data delivery time is reduced in the service embedding approach where the proposed traffic splitting approach is employed resulting in the selection of energy efficient nodes and routes in the IoT network. Our methods resulted in up to 35% power saving compared to current methods and reduced the average traffic latency by up to 37% by selecting energy-efficient nodes and routes in IoT networks and by optimizing traffic flow to minimize latency.